WAS v8.5 > Develop applications > Develop web services - Invocation framework (WSIF) > Use WSIF to invoke web services > Linking a WSIF service to the underlying implementation of the serviceLinking a WSIF service to a JMS-provided service
The JMS providers enable a WSIF service to be invoked through either SOAP over JMS, or native JMS. Add Web Services Description Language (WSDL) extensions to the web service WSDL file so the service can use the JMS providers.
The 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 endpoint for a web service can be realized in any of the following 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 web service that is implemented as a stateless session bean.
The JMS destination endpoint 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 endpoint creates the JMS response message the following rules must be followed:
- The response message must be sent to JMSReplyTo from the incoming request.
- The JMSCorrelationID value of the response message must be set to the JMSMessageID value from the request message.
- The response must be sent with a deliveryMode value equal to the JMSDeliveryMode value of the request message.
- The response must be sent with a priority value equal to the JMSPriority value of the request message.
- The TimeToLive/JMSExpiration value must be set to a value that equals the JMSExpiration value 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.
To link a WSIF service to a JMS-provided service, use the following information and code examples:
- Link your WSIF service to a SOAP over JMS service.
- Link a WSIF service to a service provided at a JMS destination.
- Enable a WSIF client to invoke a web service through JMS.
Subtopics
- Writing the WSDL extension that lets your WSIF service access a SOAP over JMS service
We can write a WSDL extension that enables your WSIF service to access a SOAP service that uses the JMS as its transport mechanism.- Writing the WSDL extensions that let your WSIF service access a service at a JMS destination
Using the native JMS provider, WSIF clients can treat a service that is available at a JMS destination as a Web service. Use this information, and associated code fragments, to help to write the WSDL extensions.- Enable a WSIF client to invoke a web service through JMS
The ways in which the Web Services Invocation Framework (WSIF) interacts with the JMS, and the steps to take to enable a service to be invoked through JMS by a WSIF client application.- JMS message header: The TimeToLive property reference
The range of permitted values for the TimeToLive property of a JMS message that WSIF puts onto a queue.
Related
Linking a WSIF service to a SOAP over HTTP service
Writing the WSDL extension that lets your WSIF service invoke a method on a local Java object
Writing the WSDL extension that lets your WSIF service invoke an enterprise bean