SOAP( Java 클라이언트에 대한 SOAP 지원 참조)를 사용하면 분산 환경에서 두 피어 간에 구조화된 데이터(XML 스키마에서 지정)를 교환할 수 있습니다. Sun의 SOAP 구현에서는 현재 안정적인 SOAP 메시징과 SOAP 메시지 게시를 지원하지 않습니다. 그러나 Message Queue 서비스를 사용하여 안정적인 SOAP 메시징을 수행할 수 있으며, 원하는 경우 SOAP 메시지를 게시할 수 있습니다. Message Queue 서비스는 SOAP 메시지를 직접 전달하지 않습니다. 그러나 SOAP 메시지를 JMS 메시지로 래핑하고, 이러한 메시지를 일반 JMS 메시지처럼 생성 및 소비하며, JMS 메시지에서 SOAP 메시지를 추출할 수 있습니다.
Message Queue에서는 javax.xml.messaging과 com.sun.messaging.xml의 두 가지 패키지를 통해 SOAP 지원을 제공합니다. 이러한 라이브러리에서 구현된 클래스를 사용하여 SOAP 메시지를 수신하고, SOAP 메시지를 JMS 메시지로 래핑하며, JMS 메시지에서 SOAP 메시지를 추출할 수 있습니다. J2EE 플랫폼은 SOAP 메시지를 어셈블 및 역어셈블하는 데 사용할 수 있는 java.xml.soap 패키지를 제공합니다.
java.xml.soap 패키지에 정의된 객체를 사용하여 SOAP 메시지를 구성하거나, javax.xml.messaging 패키지에 정의된 서블릿을 사용하여 SOAP 메시지를 수신하거나, JAX-RPC와 같은 웹 서비스를 사용하여 SOAP 메시지를 수신합니다.
Message Transformer 유틸리티를 사용하여 SOAP 메시지를 JMS 메시지로 변환합니다.
JMS 메시지를 원하는 대상으로 보냅니다.
JMS 메시지를 비동기식 또는 동기식으로 소비합니다.
JMS 메시지를 소비한 후 Message Transformer 유틸리티를 사용하여 해당 메시지를 SOAP 메시지로 변환합니다.
java.xml.soap 패키지에 정의된 SAAJ API를 사용하여 SOAP 메시지를 역어셈블합니다.
SOAP 메시지 및 처리 방법에 대한 자세한 내용은 Sun Java System Message Queue 3.7 UR1 Developer’s Guide for Java Clients의 5 장, Working with SOAP Messages를 참조하십시오.