데이터 변환에 대한 메시지 플로우 구성

호환되지 않는 시스템에서 실행되는 응용프로그램 간에 메시지를 교환할 경우, 메시지가 브로커를 통과할 때 데이터 변환을 제공하도록 시스템을 구성할 수 있습니다. 송신 및 수신 시스템에서 다음 두 값 중 하나가 서로 다를 경우에 데이터 변환이 필요할 수 있습니다.

  1. CCSID. 코드화 문자 세트 ID는 코드화 문자 세트와 해당 코드 포인트 지정을 참조합니다. WebSphere Message Broker에서는 WebSphere MQ가 모든 운영 체제에서 유니코드 간의 변환을 제공하는 코드 페이지에서 응용프로그램 메시지를 처리하고 구성할 수 있습니다. 코드 페이지 지원에 대한 자세한 정보는 WebSphere MQ Application Programming Reference를 참조하십시오.

    이 작동은 WebSphere Message Broker와 함께 다른 제품을 사용하는 데 영향을 받을 수도 있습니다. 추가 특정 코드 페이지 지원 정보를 보려면, 사용된 모든 데이터베이스를 포함하여 다른 제품의 문서를 점검하십시오.

  2. 인코딩. 시스템에서 숫자, 즉 2진 정수, Packed Decimal 정수 및 부동 소수점 숫자를 인코딩하는 방법을 정의합니다. 문자로 표시되는 숫자는 다른 모든 문자열 데이터와 동일한 방법으로 핸들링됩니다.

송신 및 수신 시스템의 고유 CCSID 및 인코딩이 동일하면, 데이터 변환 프로세스를 호출하지 않아도 됩니다.

WebSphere Message BrokerWebSphere MQ에서는 호환되지 않는 시스템 간의 메시지 교환을 지원하기 위해 데이터 변환 기능을 제공합니다. 사용할 기능의 선택은 메시지 플로우가 처리하는 메시지의 특성에 따라 달라집니다.

텍스트만 포함하는 메시지

WebSphere MQ 메시지가 모든 텍스트(문자 데이터 또는 문자열)을 포함하는 경우 이 절을 읽으십시오. WebSphere MQ가 송신 및 수신 응용프로그램이 실행 중인 시스템에서 데이터 변환을 지원하는 경우, WebSphere MQ 기능을 사용하십시오. 이 경우 가장 효율적인 데이터 변환 옵션이 제공됩니다.

WebSphere MQ의 디폴트 작동은 로컬 시스템 CCSID 및 인코딩을 지정하여 메시지를 큐에 넣는 것입니다. MQGET을 발행하는 응용프로그램에서는 큐 관리자가 가져오기 처리의 일부로서 해당 CCSID 및 인코딩으로 변환하도록 요청할 수 있습니다.

이 옵션을 사용하려면 다음을 수행하십시오.

  1. 메시지를 텍스트 전용으로 설계하십시오. COBOL을 사용 중이면, 숫자 필드를 USAGE DISPLAY로 이동하여 이 필드를 문자열 형식에 넣습니다.
  2. MQMD의 형식 필드를 MQFMT_STRING(값 MQSTR)으로 설정하십시오.
  3. 수신 응용프로그램에서 MQGET을 MQGMO_CONVERT와 함께 발행하십시오. 기호에 따라, 브로커에서 메시지를 수신할 때 MQInput 노드의 변환 등록 정보를 예로 설정하여(선택란을 선택하여) 변환을 수행할 수 있습니다.

WebSphere MQ에서 이 방법으로 제공하는 것보다 더 복잡한 데이터 변환이 필요하면(예: 지원되지 않는 코드 페이지로), WebSphere MQ 데이터 변환 엑시트를 사용하십시오. 이에 대한 자세한 정보는 WebSphere MQ Application Programming Reference를 참조하십시오.

숫자를 포함하는 메시지

메시지가 숫자 데이터를 포함하거나 텍스트 전용이나 WebSphere MQ 메시지가 아닌 경우 이 절을 읽으십시오. 이러한 메시지가 사전정의될 수 있는 경우(즉, 해당 컨텐츠 및 구조를 알 수 있고 예측 가능함), WebSphere Message Broker에서 제공되는 기능과 MRM을 사용하십시오.

브로커가 모든 응용프로그램 메시지를 유니코드로 핸들링하며, 이 메시지는 입력 시 유니코드로 변환되고 출력 시 유니코드에서 변환됩니다. 메시지 플로우를 구성하여 출력 메시지 구성 방법에 영향을 줄 수 있습니다.

이 옵션을 사용하려면 다음을 수행하십시오.

  1. MRM 도메인에 출력 메시지를 정의하십시오. 다음 방법 중 하나로 이 정의를 작성할 수 있습니다.
    • 외부 메시지 정의를 들여오십시오(예: C 헤더 또는 COBOL 사본).
    • 메시지 정의 편집기로 메시지 모델을 작성하십시오.
  2. 메시지 플로우를 구성하여 이 메시지를 수신하고 처리하십시오.
    1. MQInput 노드를 포함하는 경우, 이 노드에서 변환을 요청하지 마십시오.
    2. 메시지 플로우에 Compute 노드를 포함시켜 필수 컨텐츠와 함께 출력 메시지를 작성하십시오.
      • 출력 메시지가 WebSphere MQ 메시지이면, Compute 노드에서 MQMD에 있는 대상 시스템의 CCSID 및 인코딩을 설정하도록 ESQL을 코딩하십시오.

        예를 들면, CCSID 37 및 인코딩 785로 실행되는 대상 z/OS 시스템의 값을 설정하려면 다음과 같이 코딩하십시오.

        SET OutputRoot.MQMD.CodedCharSetId = 37;
        SET OutputRoot.MQMD.Encoding = 785;
      • 출력 메시지가 WebSphere MQ 메시지가 아니면, Compute 노드에서 등록 정보 폴더에 있는 대상 시스템의 CCSID 및 인코딩을 설정하도록 ESQL을 코딩하십시오.
자체 정의 메시지

메시지가 자체 정의인 경우 이 절을 읽으십시오.

자체 정의 메시지는 XML 및 JMS 도메인에서 지원됩니다. 이러한 메시지는 모두 텍스트이므로, WebSphere MQ 응용프로그램에서 시작되거나 목적지인 경우 WebSphere MQ에서 핸들링할 수 있습니다. 그렇지 않으면, Compute 노드를 통해 전달될 때 메시지의 등록 정보 폴더에서 CCSID 및 인코딩 필드를 설정하여 WebSphere Message Broker 기능을 사용하십시오.

관련 개념
사전정의 및 자체정의 메시지
메시지 플로우 개요
일반 사용자 응용프로그램 지원
관련 태스크
메시지 플로우 설계
코드 페이지 및 메시지 인코딩 변환
메시지 플로우 작성
메시지 플로우 컨텐츠 정의
일반 사용자 응용프로그램 지원
관련 참조
내장 노드
지원되는 코드 페이지
주의사항 | 등록상표 | 다운로드 | 라이브러리 | 지원 | 피드백
Copyright IBM Corporation 1999, 2006 마지막 갱신 날짜: 2006/08/21
ac12380_