이 주제는 다음 절을 포함합니다.
WebSphere MQ Enterprise Transport를 사용하여 브로커에 연결하거나 MQI 및 AMI 응용프로그램 프로그래밍 인터페이스를 사용하는 클라이언트에서 메시지를 수신하려면 MQInput 노드를 사용하십시오.
MQInput 노드는 메시지 입력을 브로커의 큐 관리자에 정의되어 있는 WebSphere MQ 메시지 큐에서 메시지 플로우로 수신합니다. 노드는 MQGET을 사용하여 지정된 큐에서 메시지를 읽어 메시지의 처리 환경을 설정합니다. 적절한 경우 입력 큐를 WebSphere MQ 클러스터 큐 또는 공유 큐로 정의할 수 있습니다.
WebSphere MQ 연결을 통해 수신된 메시지를 핸들링하는 메시지 플로우는 항상 MQInput 노드로 시작해야 합니다. 적절한 MQGET 옵션을 설정하여 메시지 수신 방법을 제어하는 MQInput 노드의 등록 정보를 설정할 수 있습니다. 예를 들면, 트랜잭션 제어하에 메시지를 처리하도록 표시할 수 있습니다. 입력 메시지를 수신할 때마다 데이터 변환을 수행하도록 요청할 수도 있습니다.
MQInput 노드는 다음 메시지 도메인에 있는 메시지를 핸들링합니다.
MQInput 노드로 시작하는 메시지 플로우에 출력 노드를 포함시킬 경우, 노드는 사용자 정의 출력 노드를 비롯하여; 지원되는 어떤 출력 노드도 가능합니다. MQOutput 노드는 포함시키지 않아도 됩니다. 메시지 플로우를 구성하여 브로커에 필요한 변환을 제공하도록 요청할 수 있기 때문에 WebSphere MQ 클라이언트에서 메시지를 수신한 다음 지원되는 모든 전송 방식을 사용하여 브로커에 연결하는 클라이언트에 대한 메시지를 생성하는 메시지 플로우를 작성할 수 있습니다.
서브플로우로 사용할 메시지 플로우를 작성하는 경우 표준 입력 노드를 사용할 수 없으므로 서브플로우에 대한 in 터미널을 작성하려면 첫 번째 노드로 입력 노드 인스턴스를 사용해야 합니다.
메시지 플로우가 WebSphere MQ 연결을 통해 메시지를 수신하지 못할 경우, 지원되는 입력 노드 중 하나를 선택할 수 있습니다.
MQInput 노드는 Workbench에서 다음 아이콘으로 표시됩니다.
MQInput 노드 인스턴스를 메시지 플로우에 넣었으면 이 노드를 구성할 수 있습니다. 편집기 보기에서 이 노드를 마우스 오른쪽 단추로 누른 후 등록 정보를 누르십시오. 등록 정보 대화 상자에 노드의 기본 등록 정보가 표시됩니다.
정의된 디폴트 값이 없는 모든 필수 등록 정보는 등록 정보 대화 상자에서 별표(*)로 표시됩니다.
다음과 같이 MQInput 노드를 구성하십시오.
<mcd><Msd>MRM</Msd><Set>DHM4UO906S001</Set><Type>receiptmsg1</Type> <Fmt>XML</Fmt></mcd>
값 설정 시 이 값이 MQRFH2 헤더의 값과 다르면, MQRFH2 헤더의 값이 우선합니다.
XML, XMLNS, XMLNSC, JMS, MIME 및 BLOB 구문 분석기에 대해서는 메시지 세트를 공백으로 남겨 두십시오.
XML, XMLNS, XMLNSC, JMS, MIME, BLOB 및 IDOC 구문 분석기에 대해서는 메시지 유형을 공백으로 남겨 두십시오.
XML, XMLNS, XMLNSC, JMS, MIME 및 BLOB 구문 분석기에 대해서는 메시지 형식을 공백으로 남겨 두십시오.
이 옵션에 대한 자세한 정보는 메시지 그룹을 핸들링하도록 노드 구성을 참조하십시오.
선택란을 지울 경우, 그룹의 일부분으로 송신된 메시지는 사전에 결정된 순서대로 수신되지 않습니다. 브로커가 그룹에 있는 메시지를 수신하리라 예상되지만 이 선택란이 선택되지 않은 경우 이는 입력 메시지의 순서가 중요하지 않은 것입니다. 그렇지 않은 경우 메시지 플로우가 이들을 제대로 처리하도록 설계되어 있습니다.
그룹의 마지막 메시지가 수신되어 처리된 후에만 메시지 처리가 확약되게 하려면 메시지 그룹별 확약 선택란도 선택해야 합니다.
이 등록 정보가 맵핑되는 옵션에 대한 자세한 정보는 WebSphere MQ Application Programming Reference에 나와 있습니다.
이 옵션에 대한 자세한 정보는 메시지 그룹을 핸들링하도록 노드 구성을 참조하십시오.
이 등록 정보가 맵핑되는 옵션에 대한 자세한 정보는 WebSphere MQ Application Programming Reference에 나와 있습니다.
최대 48자리까지 짝수 개의 16진 숫자(0 - 9, A - F 및 a - f 문자가 올바름)를 입력하십시오. 입력한 ID가 MsgId 필드의 크기보다 작으면, ID의 오른쪽에 X'00' 문자가 채워져 있는 것입니다. 이는 MQI의 MQGMO 중 MQMO_MATCH_MSG_ID 옵션에 맵핑됩니다.
입력 노드가 메시지 ID가 일치하는지 여부를 점검하지 않게 하려면 이 등록 정보를 공백으로 남겨 두십시오.
이 등록 정보가 맵핑되는 옵션에 대한 자세한 정보는 WebSphere MQ Application Programming Reference에 나와 있습니다.
최대 48자리까지 짝수 개의 16진 숫자(0 - 9, A - F 및 a - f 문자가 올바름)를 입력하십시오. 입력한 ID가 CorrelId 필드의 크기보다 작으면, ID의 오른쪽에 X'00' 문자가 채워져 있는 것입니다. 이는 MQI의 MQGMO 중 MQMO_MATCH_CORRE_ID 옵션에 맵핑됩니다.
입력 노드가 메시지 ID가 일치하는지 여부를 점검하지 않게 하려면 이 등록 정보를 공백으로 남겨 두십시오.
이 등록 정보가 맵핑되는 옵션에 대한 자세한 정보는 WebSphere MQ Application Programming Reference에 나와 있습니다.
WebSphere MQ가 입력 큐에 있는 메시지를 검색하기 위해 입력 노드가 MQGET 호출에 제공하는 MQMD에 지정된 인코딩 및 코드화 문자 세트로 수신되는 메시지를 변환합니다. 메시지 플로우는 이러한 값을 사용하여 모든 출력 메시지를 생성하고 MQMD에 설정된 이러한 Encoding 및 CodedCharSetID 값으로 이들 메시지를 대상 큐에 넣습니다.
이 등록 정보는 MQI의 MQGMO 중 MQGMO_CONVERT 옵션에 맵핑됩니다.
WebSphere MQ가 메시지를 변환하지 않도록 하려면 선택란의 선택 표시를 지우십시오.
이 선택란을 선택하면 다음 선택란도 선택할 수 있습니다.
값을 지정하지 않으면 수신되는 메시지 MQMD의 값이 사용됩니다.
올바르지 않은 값을 지정할 경우, 변환이 완료되지 않습니다.
값을 지정하지 않으면 수신되는 메시지 MQMD의 값이 사용됩니다.
올바르지 않은 값을 지정할 경우, 변환이 완료되지 않습니다.
WebSphere MQ 데이터 변환과 이 옵션을 사용하도록 선택한 이유에 대한 자세한 정보는 WebSphere MQ Application Programming Guide를 참조하십시오. 인코딩 변환 및 코드화 문자 세트 ID에 지정할 수 있는 값에 대한 자세한 정보는 WebSphere MQ Application Programming Reference를 참조하십시오.
이 등록 정보는 논리 순서를 선택한 경우에만 적용됩니다.
그룹의 메시지를 큐에 나타난 순서 대로 검색 및 처리해야 하는 경우 순서 모드 등록 정보를 큐 순서별로 설정하십시오.
직렬화 토큰으로 제공한 값은 WebSphere MQ Application Programming Reference에 설명된 규칙을 준수해야 합니다.
z/OS의 직렬화 및 큐 공유에 대한 자세한 정보는 WebSphere MQConcepts and Planning Guide를 참조하십시오.
자세한 정보는 메시지 유효성 검증 및 MRM 도메인에서 메시지의 유효성 검증 등록 정보를 참조하십시오.
대화 상자를 닫고 등록 정보에서 작성한 모든 변경을 제거하려면 취소를 누르십시오.
MQInput은 검색한 메시지를 out 터미널로 라우트합니다. 검색에 실패하면 메시지를 재시도합니다. 재시도 시간 종료가 만기되면(입력 큐의 BackoutThreshold 속성에 정의된 대로) 메시지가 failure 터미널로 라우트됩니다. 이 조건을 핸들링하기 위해 이 터미널에 노드를 연결할 수 있습니다. failure 터미널이 연결되어 있지 않으면 백아웃 큐에 메시지가 기록됩니다.
메시지 플로우에서 추가적인 예외가 전달된 후 이 노드에서 메시지가 포착되면, 메시지가 catch 터미널로 라우트됩니다. catch 터미널이 연결되어 있지 않으면, 문제점이 해결될 때까지 메시지는 노드를 통해 계속해서 루프를 순환합니다. 노드를 통해 메시지가 계속해서 루핑되는 것을 방지하려면 백아웃 큐 또는 데드-레터 큐(DLQ)를 정의해야 합니다.
메시지 플로우에 MQInput 노드가 포함되어 있는 경우, 트랜잭션 모드에 대해 설정한 값이 동기점 아래에 메시지가 수신되는지 여부를 정의합니다.
(MQOutput 노드는 이 옵션을 대체하기 위해 구성할 수 있는 유일한 출력 노드입니다.)
WebSphere MQ는 메시지 그룹을 지원하므로 메시지가 그룹에 속하고 이러한 메시지의 처리 및 그룹의 다른 메시지 처리를 하나의 트랜잭션으로 핸들링하도록 지정할 수 있습니다. 즉, 그룹에서 하나의 메시지 처리에 실패하면 그룹의 모든 메시지가 백아웃됩니다. 모든 메시지의 처리가 성공한 경우에만 그룹의 마지막 메시지가 처리되면 메시지 처리가 확약됩니다.
그룹의 메시지를 포함하고 그룹 내 모든 메시지가 그룹에 정의된 순서 대로 큐에서 읽혀지고 처리되는 것이 중요한 경우 아래 나열된 모든 조치를 완료해야 합니다.
또한 동일한 입력 큐에서 메시지를 검색하는 다른 메시지 플로우가 없는지 확인해야 합니다. 이를 확인한 경우 그룹 내 메시지의 처리 순서에 대해서는 보장하지 않습니다.
다음 표에는 MQInput 노드 터미널이 설명되어 있습니다.
터미널 | 설명 |
---|---|
Failure | 오류가 발생할 경우 메시지가 라우트될 출력 터미널. 유효성 검증 등록 정보가 설정되어 있어도 이 터미널로 전달된 메시지는 유효성이 검증되지 않습니다. |
Out | WebSphere MQ 큐에서 검색이 완료되었을 경우 메시지가 라우트될 출력 터미널. |
Catch | 예외에서 다운스트림이 전달되어 이 노드에서 포착되었을 경우 메시지가 라우트될 출력 터미널. |
다음 표에는 노드 등록 정보가 설명되어 있습니다. 앞에 M이 표시된 열은 등록 정보가 필수임을 나타내며(디폴트가 정의되지 않았을 때 값을 입력해야 하는 경우 등록 정보 대화 상자에 별표(*)로 표시됨) 앞에 C가 표시된 열은 등록 정보가 구성 가능함을 나타냅니다(메시지 플로우를 BAR 파일에 추가하여 전개할 때 값을 변경할 수 있음).
다음 표에는 MQInput 노드의 기본 등록 정보가 설명되어 있습니다.
등록 정보 | M | C | 디폴트 | 설명 |
---|---|---|---|---|
큐 이름 | 예 | 예 | 이 노드가 MQGET을 사용하여 이 메시지 플로우에서 처리할 메시지를 검색하는 WebSphere MQ 입력 큐의 이름. |
다음 표에는 MQInput 노드의 디폴트 등록 정보가 설명되어 있습니다.
등록 정보 | M | C | 디폴트 | 설명 |
---|---|---|---|---|
메시지 도메인 | 아니오 | 아니오 | 들어오는 메시지를 구문 분석하는 데 사용하는 도메인 | |
메시지 세트 | 아니오 | 아니오 | 들어오는 메시지를 정의하는 메시지 세트의 이름 또는 ID | |
메시지 유형 | 아니오 | 아니오 | 들어오는 메시지의 이름 | |
메시지 형식 | 아니오 | 아니오 | 들어오는 메시지의 물리적 형식 이름 | |
토픽 | 아니오 | 예 | 입력 메시지의 디폴트 토픽. |
다음 표에는 MQInput 노드의 고급 등록 정보가 설명되어 있습니다.
등록 정보 | M | C | 디폴트 | 설명 |
---|---|---|---|---|
트랜잭션 모드 | 예 | 아니오 | 예 | 수신되는 메시지가 동기점 아래에 수신되는지 여부. 올바른 값은 자동, 예 및 아니오입니다. |
순서 모드 | 예 | 아니오 | 디폴트 | 입력 큐에서 검색하여 처리하는 순서. 올바른 값은 디폴트, 사용자 ID별 및 큐 순서별입니다. |
논리 순서 | 예 | 아니오 | 선택 | WebSphere MQ에 정의된 대로 메시지가 논리 순서로 수신되는지 여부. 이 선택란을 선택하면 이 조치가 수행됩니다. |
모든 메시지 사용 가능 | 예 | 아니오 | 지우기 | 선택란을 선택하면 메시지 검색이 가능하기 전에 그룹의 모든 메시지가 사용 가능해집니다. |
메시지 ID 일치 | 아니오 | 아니오 | 수신되는 메시지의 MQMD에 있는 메시지 ID와 일치해야 하는 메시지 ID. | |
상관 ID 일치 | 아니오 | 아니오 | 수신되는 메시지의 MQMD에 있는 상관 ID와 일치해야 하는 메시지 ID. | |
변환 | 예 | 아니오 | 지우기 | WebSphere MQ가 MQMD의 CodedCharSetId 및 Encoding 값 세트에 맞게 수신되는 메시지에 대해 데이터를 변환하는지의 여부. 이 선택란을 선택하면 이 조치가 수행됩니다. |
인코딩 변환 | 아니오 | 아니오 | 메시지 데이터의 숫자 값에 사용되는 표현(정수 값으로 표현됨). 이 등록 정보는 변환 선택란을 선택한 경우에만 올바릅니다. | |
코드화 문자 세트 ID 변환 | 아니오 | 아니오 | 메시지 데이터에 있는 문자 데이터의 코드화 문자 세트 ID(정수 값으로 표현됨). 이 등록 정보는 변환 선택란을 선택한 경우에만 올바릅니다. | |
메시지 그룹별 확약 | 예 | 아니오 | 지우기 | 메시지 그룹의 일부인 메시지를 처리할 때 트랜잭션이 확약되는 시기. 선택란을 선택하면 메시지 그룹 처리 시 트랜잭션이 확약됩니다. |
z/OS 직렬화 토큰 | 아니오 | 아니오 | 직렬화된 응용프로그램 지원을 위한 사용자 정의 토큰. 지정한 값은 WebSphere MQ MQCNO 구조에 있는 올바른 ConnTag에 대한 규칙을 준수해야 합니다. 이러한 규칙은 WebSphere MQ Application Programming Reference에 설명되어 있습니다. |
다음 표에는 MQInput 노드의 유효성 확인 등록 정보가 설명되어 있습니다.
이 등록 정보에 대한 자세한 설명은 MRM 도메인에서 메시지의 유효성 검증 등록 정보를 참조하십시오.등록 정보 | M | C | 디폴트 | 설명 |
---|---|---|---|---|
유효성 검증 | 예 | 예 | 없음 | 유효성 검증이 발생하는지의 여부. 올바른 값은 없음, 컨텐츠 및 컨텐츠 및 값입니다. |
실패 조치 | 예 | 아니오 | 예외 | 유효성 검증에 실패한 경우의 조치. 유효성 검증을 컨텐츠 또는 컨텐츠 및 값으로 설정한 경우에만 이 등록 정보를 설정할 수 있습니다. 올바른 값은 사용자 추적, 로컬 오류 로그, 예외 및 예외 목록입니다. |
모든 값 제한조건 포함 | 예 | 아니오 | 선택 | 이 등록 정보는 편집할 수 없습니다. 선택될 선택란에 표시되는 디폴트 조치는 컨텐츠 및 값 유효성 검증 내에 기본 값 제한조건 점검이 포함되어 있는 것입니다. |
수정사항 | 예 | 아니오 | 없음 | 이 등록 정보는 편집할 수 없습니다. |
다음 표에는 MQInput 노드에 대한 일반 메시지 옵션의 등록 정보가 설명되어 있습니다.
등록 정보 | M | C | 디폴트 | 설명 |
---|---|---|---|---|
구문 분석 타이밍 | 예 | 아니오 | On Demand | 이 등록 정보는 입력 메시지를 구문 분석하는 시기를
제어합니다. 올바른 값은 On
Demand, Immediate
및 Complete입니다. 이 등록 정보에 대한 자세한 설명은 요청시 구문 분석을 참조하십시오. |
MQRFH2 도메인에 MQRFH2C 압축 구문 분석기 사용 | 예 | 아니오 | 아니오 | 이 등록 정보는 MQRFH2 헤더에 MQRFH2 구문 분석기 대신 MQRFH2C 압축 구문 분석기를 사용하는지 여부를 제어합니다. |
다음 표에는 MQInput 노드의 XMLNSC 구문 분석기 옵션 등록 정보가 설명되어 있습니다.
등록 정보 | M | C | 디폴트 | 설명 |
---|---|---|---|---|
XMLNS 도메인에 XMLNSC 압축 구문 분석기 사용 | 예 | 지우기 | 아니오 | ![]() ![]() |
혼합 컨텐츠 보유 모드 | 예 | 아니오 | 없음 | 이 등록 정보는 XMLNSC 구문 분석기가 입력 메시지에서 혼합 텍스트를 발견할 경우 메시지 트리에서 요소를 작성하는지 여부를 제어합니다. 올바른 값은 없음 및 모두입니다. 모두를 선택하면 혼합 텍스트에 대해 요소가 작성됨을 의미합니다. 없음을 선택하면 혼합 텍스트가 무시되고 요소가 작성되지 않음을 의미합니다. |
주석 보유 모드 | 예 | 아니오 | 없음 | 이 등록 정보는 XMLNSC 구문 분석기가 입력 메시지에서 주석을 발견할 경우 메시지 트리에서 요소를 작성하는지 여부를 제어합니다. 올바른 값은 없음 및 모두입니다. 모두를 선택하면 주석에 대해 요소가 작성됨을 의미합니다. 없음을 선택하면 주석이 무시되고 요소가 작성되지 않음을 의미합니다. |
처리 지시사항 보유 모드 | 예 | 아니오 | 없음 | 이 등록 정보는 XMLNSC 구문 분석기가 입력 메시지에서 처리 지시사항을 발견할 경우 메시지 트리에서 요소를 작성하는지 여부를 제어합니다. 올바른 값은 없음 및 모두입니다. 모두를 선택하면 처리 지시사항에 대해 요소가 작성됨을 의미합니다. 없음을 선택하면 처리 지시사항이 무시되고 요소가 작성되지 않음을 의미합니다. |
다음 표에는 MQInput 노드의 설명 등록 정보가 설명되어 있습니다.
등록 정보 | M | C | 디폴트 | 설명 |
---|---|---|---|---|
간단한 설명 | 아니오 | 아니오 | 노드에 대한 간략한 설명. | |
자세한 설명 | 아니오 | 아니오 | 메시지 플로우에서 노드의 목적을 설명하는 텍스트. |