WebSphere Message Service Clients for C/C++ and .NET, Version 1.2 운영 체제: Linux, Windows

XMS 메시지 본문

메시지 본문은 응용프로그램 데이터를 포함합니다. 그러나 메시지가 본문을 포함할 수 없으며 헤더 필드 및 등록 정보만으로 구성됩니다.

XMS 다섯 가지 유형의 메시지 본문을 지원합니다.
바이트
본문이 바이트 스트림을 포함합니다. 이 유형의 본문이 있는 메시지를 바이트 메시지라고 합니다. C 또는 C++ 용 BytesMessage 클래스 및 .NET용 IBytesMessage 인터페이스는 바이트 메시지의 본문을 처리하는 메소드를 포함합니다.
본문은 이름-값 쌍 세트를 포함합니다. 이 때 각 값은 연관된 데이터 유형을 갖습니다. 이 유형의 본문이 있는 메시지를 맵 메시지라고 합니다. C 또는 C++ 용 MapMessage 클래스 및 .NET용 IMapMessage 인터페이스는 맵 메시지의 본문을 처리하는 메소드를 포함합니다.
오브젝트
본문이 직렬화된 Java 또는 .NET 오브젝트를 포함합니다. 이 유형의 본문이 있는 메시지를 오브젝트 메시지라고 합니다. C 또는 C++ 용 ObjectMessage 클래스 및 .NET용 IObjectMessage 인터페이스는 오브젝트 메시지의 본문을 처리하는 메소드를 포함합니다.
스트림
본문은 값 스트림을 포함합니다. 이 때 각 값은 연관된 데이터 유형을 갖습니다. 이 유형의 본문이 있는 메시지를 스트림 메시지라고 합니다. C 또는 C++용 StreamMessage 클래스 및 .NET용 IStreamMessage 인터페이스는 스트림 메시지의 본문을 처리하는 메소드를 포함합니다.
텍스트
본문이 문자열을 포함합니다. 이 유형의 본문이 있는 메시지를 텍스트 메시지라고 합니다. C 또는 C++ 용 TextMessage 클래스 및 .NET용 ITextMessage 인터페이스는 텍스트 메시지의 본문을 처리하는 메소드를 포함합니다.

응용프로그램이 메시지를 작성할 때 C 인터페이스에서 XMS 메시지 핸들을 응용프로그램에 리턴합니다. 응용프로그램은 이 핸들을 사용하여 메시지 본문의 유형에 적합한 메시지 클래스의 모든 메소드, BytesMessage, MapMessage, ObjectMessage, StreamMessage 또는 TextMessage 클래스의 모든 메소드를 호출할 수 있습니다. 그러나 응용프로그램이 메시지 본문의 유형에 적합하지 않은 메소드를 호출하려고 하면 호출이 실패하고 XMS 오류 코드 XMS_E_BAD_PARAMETER를 리턴합니다.

C 응용프로그램은 xmsMsgGetTypeId() 함수를 호출하여 메시지의 본문 유형을 판별할 수 있습니다. 함수는 다음 값 중 하나를 리턴합니다.
XMS_MESSAGE_TYPE_BASE
메시지에 본문이 없는 경우
XMS_MESSAGE_TYPE_BYTES
메시지가 바이트 메시지인 경우
XMS_MESSAGE_TYPE_MAP
메시지가 맵 메시지인 경우
XMS_MESSAGE_TYPE_OBJECT
메시지가 오브젝트 메시지인 경우
XMS_MESSAGE_TYPE_STREAM
메시지가 스트림 메시지인 경우
XMS_MESSAGE_TYPE_TEXT
메시지가 텍스트 메시지인 경우
C 코드의 다음 단편을 예로 들어 설명합니다.
xmsMESSAGE_TYPE msgtype;
xmsMsgConsumerReceive(messageConsumer, &msg, errorBlock);
xmsMsgGetTypeId(msg, &msgtype, errorBlock);
if (msgtype == XMS_MESSAGE_TYPE_BYTES)
{
  xmsBytesMsgGetBodyLength(msg, &length, errorBlock);
}

C++ 인터페이스에서 BytesMessage, MapMessage, ObjectMessage, StreamMessage 및 TextMessage는 메시지 클래스의 서브클래스입니다.

.NET에서 IMessage 인터페이스는 모든 메시지 오브젝트의 상위이며 모든 XMS 메시지 유형을 표시하는 데 사용할 수 있습니다.

XMS 응용프로그램이 WebSphere MQ JMS 응용프로그램과 메시지를 교환하려면 XMS 응용프로그램 및 WebSphere MQ JMS 응용프로그램이 동일한 방법으로 메시지 본문 내의 응용프로그램 데이터를 해석할 수 있어야 합니다. 따라서 XMS 응용프로그램에 의해 메시지 본문에 작성된 응용프로그램 데이터의 각 유형은 표 1에 나열된 데이터 유형 중 한 가지여야 합니다. 표에는 각 XMS 데이터 유형에 대해 호환 가능한 Java 데이터 유형이 설명되어 있습니다. XMS 해당 데이터 유형으로 응용프로그램 데이터의 요소를 작성할 수 있는 메소드 또는 해당 데이터 유형으로만 작성할 수 있는 메소드를 제공합니다.

표 1. Java 데이터 유형과 호환 가능한 XMS 데이터 유형
XMS 데이터 유형 표시 대상 크기 호환 가능한 Java 데이터 유형
xmsBOOL 부울 값 xmsTRUE 또는 xmsFALSE 32비트 boolean
xmsCHAR16 더블바이트 문자 16비트 char
xmsSBYTE 부호가 있는 8비트 정수 8비트 byte
xmsSHORT 부호가 있는 16비트 정수 16비트 short
xmsINT 부호가 있는 32비트 정수 32비트 int
xmsLONG 부호가 있는 64비트 정수 64비트 long
xmsFLOAT 부호가 있는 부동 소수점 수 32비트 float
xmsDOUBLE 부호가 있는 실수 정밀도 부동 소수점 수 64비트 double
string string - string

다섯 가지 유형의 본문 메시지에 대한 자세한 정보는 다음 주제를 참조하십시오.

관련 참조
XMS 메시지의 파트
XMS 메시지의 헤더 필드
XMS 메시지의 등록 정보
메시지 선택자
XMS 메시지를 WebSphere MQ 메시지로 맵핑

Reference topic

이용약관 | 피드백

Timestamp icon마지막 갱신 날짜: 3 Mar 2006
(C) Copyright IBM Corporation 2005. All Rights Reserved.
이 Information Center는 Eclipse 기술 기반입니다. (http://www.eclipse.org 웹 사이트 참조)