메시지 본문과 IBM MQ 형식 사이의 맵핑

IBM MQ 메시지 헤더(MQRFH2) 및 디스크립터(MQMD)는 IBM MQ 메시지 본문의 형식에 관한 정보를 포함할 수 있습니다. 서비스 통합은 메시지를 IBM MQ 형식으로부터 변환할 때 MQRFH2 및 MQMD에 들어있는 정보를 사용하고, 메시지를 IBM MQ 형식으로 변환할 때 정보를 MQRFH2 및 MQMD에 넣습니다.

서비스 통합 및 IBM MQ

일반적으로, 서비스 통합과 IBM MQ 사이에서 JMS 메시지를 교환하기 위해 메시지 형식 간 변환을 인식하지 않아도 됩니다. 왜냐하면, 서비스 통합이 해당 변환(문자 및 숫자 인코딩 포함)을 자동으로 수행하기 때문입니다. 하지만 JMS 애플리케이션이 예상대로 작동하지 않거나 서비스 통합 구성에 비JMS IBM MQ 프로그램에서 메시지를 처리하는 JMS 프로그램 또는 중개가 포함되는 경우 메시지 변환에 대해 알아야 합니다.

서비스 통합 애플리케이션에서 MapMessage 오브젝트를 IBM MQ 애플리케이션과 교환하는 경우, 기본이 아닌 맵 메시지 인코딩 형식을 지정해야 합니다.

IBM MQ 메시지 페이로드: 형식 표시

IBM MQ 형식 메시지에는 페이로드 형식의 다음 두 표시가 들어 있습니다.

MQRFH2 <mcd> 폴더, Msd 필드
이 필드는 페이로드 형식에 대한 정보를 포함할 수 있습니다. 이는 "JMS 형식" 정보입니다.
  • 서비스 통합이 메시지를 IBM MQ 형식으로 변환할 때, 자동으로 JMS 메시지 클래스에 대한 적절한 값을 설정합니다.
  • 서비스 통합이 IBM MQ 형식으로부터 메시지를 변환할 때, 이 필드의 값(필드를 포함하는 MQRFH2가 있는 경우)을 사용하여 JMS 메시지 클래스를 설정합니다.
JMS 메시지 클래스 MQRFH2 <mcd> 폴더, Msd 필드("JMS 형식")
TextMessage jms_text
BytesMessage jms_bytes
StreamMessage jms_stream
MapMessage jms_map
ObjectMessage jms_object
메시지 jms_none

"JMS 형식" 정보를 사용할 수 없는 경우, 예를 들어 MQRFH2가 없는 경우 서비스 통합은 "MQ 형식"을 기반으로 JMS 메시지 클래스를 설정합니다.

MQRFH2 <mcd> 폴더에 대한 자세한 정보는 Java 사용에 대한 IBM MQ 문서를 참조하십시오.

MQRFH2(또는 MQMD) 형식 필드

MQRFH2(또는 MQRFH2가 없는 경우 MQMD) 형식 필드에는 페이로드 형식에 대한 정보가 포함되어 있습니다. 이는 "MQ 형식" 정보입니다. 일반적으로, 페이로드가 문자 데이터임(IBM MQ에 의해 다른 코드페이지로 변환될 수 있음)을 표시하는 MQFMT_STRING과 페이로드가 문자 데이터가 아님을 표시하는 MQFMT_NONE을 포함합니다. 이러한 값은 대부분의 JMS 메시지에 적합하며, 서비스 통합이 IBM MQ 형식으로 메시지를 변환할 때 이 필드를 다음 값 중 하나로 자동 설정합니다.

JMS 메시지 클래스 MQRFH2(또는 MQMD) 형식 필드("MQ 형식")
TextMessage MQFMT_STRING
BytesMessage MQFMT_NONE
StreamMessage MQFMT_STRING
MapMessage MQFMT_STRING
ObjectMessage MQFMT_NONE
메시지 MQFMT_NONE

애플리케이션이 다른 형식 값이 필요한 IBM MQ 애플리케이션에 대한 메시지를 구성하는 경우, JMS_IBM_Format 특성을 필수 값으로 설정하여 이전 표의 값을 대체할 수 있습니다. 특정 예제는 IBM MQ 애플리케이션에 추가 헤더(예를 들어, CICS® 브릿지 애플리케이션에 대한 MQCIH 헤더)가 필요할 때입니다. 애플리케이션은 기타 메시지 데이터가 뒤따르는 헤더를 포함하는 BytesMessage 오브젝트를 구성한 후 JMS_IBM_Format 특성을 헤더에 적절한 값(예: MQCIH 헤더의 경우 MQFMT_CICS)으로 설정하여 기본 "MQ 형식"(MQFMT_NONE)을 바꿉니다.

서비스 통합이 IBM MQ 형식으로부터 메시지를 변환할 때 JMS_IBM_Format 특성을 "MQ 형식" 필드의 값으로 설정합니다. "JMS 형식"을 사용할 수 없는 경우(예: MQRFH2가 없는 경우), 서비스 통합은 JMS 메시지 클래스를 "MQ 형식"MQFMT_STRING인 경우에는 TextMessage로 설정하고 그렇지 않은 경우에는 BytesMessage로 설정합니다.

MQRFH2(또는 MQMD) 형식 필드에 대한 자세한 정보는 IBM MQ 애플리케이션 프로그래밍 참조를 참조하십시오.

IBM MQ 메시지 페이로드: 문자 및 숫자 인코딩

형식 필드에 덧붙여 MQRFH2(또는 또는 MQRFH2가 없는 경우의 MQMD)에는 메시지 페이로드에 대해 문자 인코딩과 숫자 인코딩을 식별하는 필드가 포함됩니다.

서비스 통합이 IBM MQ 형식으로 메시지를 변환할 때 대부분의 JMS 메시지에 적합한 기본값(UTF-8 문자 인코딩과 big-endian 숫자 인코딩)을 자동으로 선택합니다. 애플리케이션이 다른 문자 또는 숫자 인코딩이 필요한 IBM MQ 애플리케이션에 대한 메시지를 구성하는 경우 JMS_IBM_Character_Set 특성을 필요한 코드화 문자 세트 ID(CCSID)로 설정하거나, JMS_IBM_Encoding 특성을 필요한 숫자 형식으로 설정하거나, 둘 다를 설정하여 문자 인코딩 값을 대체할 수 있습니다. JMS_IBM_Character_SetJMS_IBM_Encoding에 사용할 수 있는 값에 대한 정보는 IBM MQ 라이브러리의 문서를 참조하십시오.

JMS 메시지에 IBM MQ에서 문자 데이터로 인코드된 본문이 있는 경우(TextMessage, StreamMessage 또는 MapMessage), JMS_IBM_Character_Set를 설정하면 서비스 통합이 텍스트를 IBM MQ 메시지 본문의 해당 코드화된 문자 세트로 변환합니다.

JMS 메시지에 문자 데이터가 아닌 본문이 있는 경우(BytesMessage 또는 ObjectMessage) JMS_IBM_Character_Set를 설정하면 서비스 통합이 바이트를 변환하지 않으며, 지정된 코드화 문자 세트를 사용하여 메시지 본문의 문자 데이터가 이미 인코드됨을 IBM MQ에 표시합니다. JMS_IBM_Format의 값이 IBM MQ가 인식하는 형식인 경우 해당 문자 데이터를 수신 애플리케이션에 필요한 코드화된 문자 세트로 변환할 수 있습니다.

서비스 통합이 IBM MQ 형식으로부터 메시지를 변환할 때 MQRFH2(또는 MQRFH2가 없는 경우 MQMD)에 있는 필드의 JMS_IBM_Character_Set, JMS_IBM_Encoding 특성을 설정합니다. JMS 메시지가 TextMessage, StreamMessage, MapMessage 또는 ObjectMessage인 경우, 사용자 애플리케이션은 JMS_IBM_Character_SetJMS_IBM_Encoding 특성의 값을 사용하지 않습니다. JMS 메시지가 BytesMessage인 경우, JMS 메시지의 본문은 2진 데이터입니다. 이 경우, 애플리케이션이 JMS_IBM_Character_SetJMS_IBM_Encoding 특성의 값을 인지해야 합니다. 왜냐하면 메시지의 2진 데이터에 임베드되어 있는 문자 데이터 또는 숫자 데이터의 인코딩을 표시하기 때문입니다.


주제 유형을 표시하는 아이콘 참조 주제



시간소인 아이콘 마지막 업데이트 날짜: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rjc0005_
파일 이름:rjc0005_.html