Use the JMS providers
JMS is an API for transport technology. The mapping to a JMS destination is defined during deployment and maintained by the container.
The JMS Destination Web service endpoint may be realized in any of these ways:
- The JMS destination for the queue can be the Web service implementation.
- The JMS destination can be (but is not required to be) associated with a Message Driven Bean by the EJB container, thereby allowing the Message Driven Bean to be the Web service implementation.
- (For SOAP over JMS) The JMS Destination can unwrap the JMS message and route the SOAP message to a stateless session bean Web service implementation.
The JMS Destination must respect the interaction model expected by the client and defined by the WSDL. It must return a response if one is required.
When the JMS Destination creates the JMS response message these rules must be adhered to:
- The response message must be sent to the JMSReplyTo from the incoming request.
- The JMSCorrelationID of the response message must be set to the value of the JMSMessageID from the request message.
- The response must be sent with a deliveryMode equal to the JMSDeliveryMode of the request message.
- The response must be sent with a priority equal to the JMSPriority of the request message.
- The timetolive/JMSExpiration must be set a value equal to the JMSExpiration of the request message.
The client does not see any of these headers. The container receives the JMS message and (for SOAP over JMS) removes the SOAP message to send to the client.
For more information about the JMS providers, see these topics: