Configuring the message listener service
To support message-driven beans deployed against listener ports, you must configure the properties of the message listener service for your application server.
Before you begin
If you want to use message-driven beans with a messaging provider that does not have a JCA Version 1.5 or 1.6 resource adapter, you cannot use activation specifications and therefore you must configure your beans against a listener port. There are also a few scenarios in which, although you could use activation specifications, you might still choose to use listener ports. For example, for compatibility with existing message-driven bean applications.
If you have existing message-driven beans that use the WebSphere® MQ messaging provider (or a compliant third-party JMS provider) with listener ports, and instead you want to use EJB 3 message-driven beans with listener ports, these new beans can continue to use the same messaging provider.
Before configuring message listener resources, consider the message listener service implementation on the z/OS® platform, which affects how you should configure your listener port.
About this task
The message listener service is an extension to the JMS functions of the JMS provider and provides a listener manager, which controls and monitors one or more JMS listeners. Each listener monitors either a JMS queue destination (for point-to-point messaging) or a JMS topic destination (for publish/subscribe messaging). For more information, see Message-driven beans - listener port components.
When you deploy an enterprise application to use message-driven beans with listener ports, you can browse or change the configuration of the message listener service for a given application server.
If your messaging system is running in non-ASF mode, to avoid unwanted
transaction timeouts, you must allow a sufficient amount of time for processing to be completed
before the total transaction lifetime timeout is reached. Therefore, you must make sure that the
value that you specify for the NON.ASF.RECEIVE.TIMEOUT message listener service
custom property is smaller than the value that you specify for the Total transaction
lifetime timeout transaction service property, and also that the difference between the
values of the two properties is greater than the amount of time that the
onMessage()
method of the message-driven bean (MDB) takes to
process the message.