SOAP/JMS web services

JMS is a transport level API that enterprises can combine with web service solutions for messaging, data persistence, and access to Java-based applications. A SOAP/JMS web service is a web service that implements a JMS queue-based transport.

A web service solution may implement a JMS destination for a queue or a topic. The connector's SOAP/JMS protocol listener supports queue destinations only; topics are not supported. JMS text messages only are supported.

During event processing, a SOAP/JMS web service client wraps a request message with a JMS message and publishes it to the queue whose JMS destination is a connector. The JMS destination retrieves the JMS message containing the web service request and extracts the SOAP request message from the JMS message. It then processes the SOAP request message.

Synchronous SOAP/JMS web service

For synchronous connector processing (Request/Response), a response message is wrapped with a JMS message (like that of the request message). The JMS message containing the web service response is then sent to the JMSReplyTo queue from the incoming request. JMS headers in the response message are set to the values of the headers in the JMS request message as follows:

This processing is discussed in detail in SOAP/JMS protocol listener processing.

Asynchronous SOAP/JMS web service

From the perspective of connector processing, an asynchronous SOAP/JMS web service is one that follows a request-only path. If the SOAP/JMS protocol listener successfully receives and processes a request-only web service message, no JMS message containing a response is returned to the client. If a ReplyToQueue is configured and a fault occurs upon receipt of a JMS message, a fault message is returned to the web service client. In addition, if an ErrorQueue is specified in the SOAP/JMS listener, the fault message is archived there.

Copyright IBM Corp. 2003