JMS(Java™ Message Service) 데이터 바인딩은
외부 JMS에서 사용하는 형식과 SCA(Service Component Architecture) 모듈에서 사용하는 서비스
데이터 오브젝트(SDO) 표시 사이의 맵핑을 제공합니다.
두 가지의 특수화된 사전 정의 JMS 데이터 바인딩은 다음과 같습니다.
- JMSDataBindingImplJava - Java 오브젝트로 직렬화된 SDO
- JMSDataBindingImplXML - XML로 직렬화된 SDO
이러한 데이터 바인딩은 임의의 데이터 오브젝트를 가져와
특정 방법으로 JMS 메시지에 직렬화합니다. 텍스트 바인딩에서는 메시지 본문이
메시지의 비즈니스 오브젝트(BO) XML 설명이어야 합니다. 오브젝트 바인딩에서는 메시지 본문이
직렬화된 Java 데이터 오브젝트여야 합니다.
JMS 메시지 클래스와 5개의 하위 유형을 지원하도록 사전 정의된 6개의 JMS 데이터
바인딩은 다음과 같으며 Java 클래스로
제공됩니다.
- JMSBaseDataBinding
- JMSTextDataBinding
- JMSBytesDataBinding
- JMSObjectDataBinding
- JMSStreamDataBinding
- JMSMapDataBinding
이러한 데이터 바인딩은 범용이며 모든 메시지 본문을 지원합니다.
텍스트 및 바이트 메시지에서 바인딩은 페이로드를 구조화되지 않은 데이터로
취급하여 모두 해당 SDO로 전송합니다.
또한 서비스 게이트웨이 인터페이스와 같이 사용할 수 있는
JMSServiceGatewayDatabinding도 있습니다. 이 데이터 바인딩으로 인바운드 JMS 메시지 유형을
판별하고 위의 해당하는 JMS 기본 데이터 바인딩으로 처리를 지연합니다.
데이터가 구조화되어 있는 경우 데이터 구문을 분석하여 그 요소를 SDO 내의 구조에
맵핑하려면 사용자 고유의 JMX 데이터 바인딩과 SDO 정의를
코딩해야 합니다. 전체 오브젝트가 아니라 오브젝트의 요소로 SDO에
맵핑하려면 오브젝트 메시지에
이를 수행해야 합니다. 사용자 정의 JMS 데이터 바인딩은 JMS 읽기 및 쓰기에 모두
사용할 수 있으며 com.ibm.websphere.sca.jms.data.JMSDataBinding
인터페이스를 구현해야 합니다.