Configure JMS resources for the synchronous SOAP over JMS endpoint listener
Configure the synchronous SOAP over Java Message Service (JMS) endpoint listeners to use a JMS provider - either the default messaging provider, or another provider such as the IBM MQ messaging provider - to pass SOAP messages over JMS.
If we have not already done so, choose a JMS messaging provider.
If we are defining a SOAP over JMS endpoint listener, we must first configure the following JMS resources for our JMS provider:
- Service integration bus queue destination (for the default messaging provider)
- JMS queue connection factory
- JMS queue destination
- JMS activation specification or listener port
Listener ports are stabilized. For more information, read the article on stabilized features. Wherever possible, we should deploy your endpoint listener application to use an activation specification. Use only activation specifications with the default messaging provider; we can use either activation specifications or listener ports with the IBM MQ messaging provider.
Tasks
- Use the administrative console to create and configure queue connection factories and queue destinations.
For more information about how to do this for our messaging provider, see the related links.
Create a queue connection factory and a queue destination for each endpoint listener that we plan to configure. For example, if we plan to configure both of the SOAP over JMS endpoint listeners that are supplied with WAS, create two connection factories (one for each endpoint listener) and two queues. The JMS resources and JNDI names that the supplied SOAP over JMS endpoint listeners expect by default are provided in the following table. If we use different resources and names in this step, then change the defaults when we subsequently configure the endpoint listener.
JMS resource default JNDI name (endpoint listener 1) default JNDI name (endpoint listener 2) queue name (endpoint listener 1) queue name (endpoint listener 2) JMS queue connection factory jms/SOAPJMSFactory1 jms/SOAPJMSFactory2 Not required Not required JMS queue destination jms/SOAPJMSQueue1 jms/SOAPJMSQueue2 User defined (for example: SOAPJMSDestQueue1) User defined (for example: SOAPJMSDestQueue2) - Configure the underlying destination for each JMS queue.
Configure these destinations as described in the documentation for our JMS provider. If we are using the default messaging provider, use the administrative console to add the two new queue names specified in the previous table as destinations for the application server as described in Create a queue for point-to-point messaging. The identifier for the destination should match that defined by the user as the queue name in the previous table.
- Configure the deployment details for the application.
If we are using activation specifications, use the administrative console to create and configure the activation specifications as described in Configure an activation specification for the default messaging provider or Create an activation specification for the IBM MQ messaging provider. Create two activation specifications, one for each endpoint listener. The default JMS resources and associated names that the synchronous SOAP over JMS endpoint listeners expect are provided in the following table. However, we can use any JNDI name for the activation specification, provided that the EAR file has the same JNDI reference in the administrative console "Binding enterprise beans to listener port names or activation specification JNDI names" panel. If we use different resources and names in this step, change the defaults when we subsequently configure the endpoint listener. We must also stop then restart the application server.
JMS resource default JNDI name (endpoint listener 1) default JNDI name (endpoint listener 2) destination JNDI name (endpoint listener 1) destination JNDI name (endpoint listener 2) activation specification eis/SOAPJMSChannel1 eis/SOAPJMSChannel2 jms/SOAPJMSQueue1 jms/SOAPJMSQueue2 If we are using listener ports with any supported JMS provider, use the administrative console to create and configure the listener ports in the message listener service as described in Add a new listener port. Create two listener ports (one for each endpoint listener). The default JMS resources and associated names that the supplied SOAP over JMS endpoint listeners expect are provided in the following table. If we use different resources and names in this step, then change the defaults when we subsequently configure the endpoint listener.
JMS resource default name (for use with SOAP over JMS endpoint listener 1) default name (for use with SOAP over JMS endpoint listener 2) listener port SOAPJMSPort1 SOAPJMSPort2 connection factory jms/SOAPJMSFactory1 jms/SOAPJMSFactory2 destination jms/SOAPJMSQueue1 jms/SOAPJMSQueue2 - Save changes to the master configuration.
- Bind the JMS resources by stopping then restarting the application server.
What to do next
We are now ready to create a new SOAP over JMS endpoint listener configuration.
Related:
Endpoint listeners and inbound ports: Entry points to the service integration bus Configure a unified connection factory for the default messaging provider Configure a queue for the default messaging provider Configure an activation specification for the default messaging provider Create a connection factory for the IBM MQ messaging provider Configure a queue for the IBM MQ messaging provider Create an activation specification for the IBM MQ messaging provider Configure a JMS connection factory for a third-party non-JCA messaging provider Configure a JMS destination for a third-party non-JCA messaging provider Example values for endpoint listener configuration Modifying an existing endpoint listener configuration Deleting endpoint listener configurations