Message listener service custom properties

Use this page to view or change custom properties of the message listener service.

To view this administrative console page, click Servers > Server Types > WebSphere application servers > server_name > [Communications] Messaging > Message Listener Service > Custom properties.

DYNAMIC.CONFIGURATION.ENABLED

This property controls whether the application server on which a listener port is created requires to be restarted. Set this property to true to enable dynamic configuration.

Information Value
Data type Boolean
Default False (not selected)
[z/OS]

ENABLE.ZOS.LP.RECOVERY

This property controls listener port behavior when an application server connects to WebSphere MQ for z/OS.

Enable this property if your environment requires either of the following capabilities:
  • A listener port to attempt to recover if a connection between the application server and WebSphere MQ has been lost, for example if the queue manager has been stopped. If you do not enable this property, the listener port does not attempt to recover after a queue manager has been stopped.
  • Multiple workload management classifications to be configured for a listener port. If you do not enable this property, messages remain on the WebSphere MQ queue when multiple workload management classifications are configured for a listener port.

Restart the server after adding the property.

If you are connecting to WebSphere MQ for z/OS through bindings connections, you also need to apply WebSphere MQ APAR PK53912, which is provided in WebSphere MQ Version 6.0.2.4.

Information Value
Data type Boolean
Default True (enabled)

MAX.RECOVERY.RETRIES

The maximum number of times that a listener port managed by this service tries to recover from a failure before giving up and stopping. When stopped the associated listener port is changed to the stop state. The interval between retry attempts is defined by the RECOVERY.RETRY.INTERVAL property.

A failure can be caused by either of the following conditions:
  • An unexpected error has occurred when a listener port tries to get a message from the JMS provider.
  • The connection between the application server and the JMS provider has been lost, usually due to a network error.
Information Value
Data type Integer
Units Retry attempts
Default 5
Range 0 (no retries) through 2147483647

MDB.THROTTLE.THRESHOLD.LOW.EQUALS.HIGH

A throttling indicator that allows controller message processing to continue when the low message threshold is reached. When the Message Listener service has been configured with the custom property of MDB.THROTTLE.THRESHOLD.LOW.EQUALS.HIGH and set to a value of "true", the low threshold value is set internally to the high threshold value (which is the externally-set Maximum sessions property of the listener port).

Information Value
Data type String
Default True

MQJMS.POOLING.THRESHOLD

The maximum number of unused connections in the pool.

An MQSimpleConnectionManager allocates connections on a most-recently-used basis, and destroys connections on a least-recently-used basis. By default, a connection is destroyed if there are more than ten unused connections in the pool.

Information Value
Data type Integer
Units Number of connections
Default 10

MQJMS.POOLING.TIMEOUT

The number of milliseconds after which a connection in the pool is destroyed if it has not been used.

An MQSimpleConnectionManager allocates connections on a most-recently-used basis, and destroys connections on a least-recently-used basis. By default, a connection is destroyed if it has not been used for five minutes.

Information Value
Data type Integer
Units Milliseconds
Default 5 minutes

NON.ASF.RECEIVE.TIMEOUT

The timeout in milliseconds for synchronous message receives performed by message-driven bean listener sessions in the non-ASF mode of operation.

Note: The message listener service has two modes of operation, Application Server Facilities (ASF) and non-Application Server Facilities (non-ASF):
  • ASF mode provides concurrency and transactional support for applications. For publish/subscribe message-drive beans, ASF mode provides better throughput and concurrency, because in the non-ASF mode the listener is single-threaded.
  • Non-ASF mode is mainly for use with third-party messaging providers that do not support JMS ASF, which is an optional extension to the JMS specification. Non-ASF mode is also transactional but, because the path length is shorter than for ASF mode, usually provides improved performance.

To enable the non-ASF mode of operation for all message-driven bean listeners on the application server, set this property to a non-zero value.

[z/OS]Non-ASF mode cannot be selected on z/OS systems, so you must not set a non-zero value for this property in this case.

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.

For example, if your message-driven bean onMessage() method typically takes a maximum of 10 seconds, and the transaction timeout is set to 120 seconds, you might set the NON.ASF.RECEIVE.TIMEOUT property to no more than 110000 milliseconds (that is, 110 seconds).

Information Value
Data type Integer
Units Milliseconds
Default ASF mode (custom property not created)
Range 0 or greater milliseconds
0
Non-ASF mode is disabled
1 or more
The timeout in milliseconds for non-ASF message-driven bean listener synchronous session receives

NON.ASF.BMT.ROLLBACK.ENABLED

When the non-Application Server Facilities (non-ASF) mode of operation is in use (because you have set the NON.ASF.RECEIVE.TIMEOUT property to a non-zero value), and a message-driven bean that uses bean-managed transactions generates a runtime exception, the NON.ASF.BMT.ROLLBACK.ENABLED property determines whether messages are returned to the destination.

Note: The message listener service has two modes of operation, Application Server Facilities (ASF) and non-Application Server Facilities (non-ASF):
  • ASF mode provides concurrency and transactional support for applications. For publish/subscribe message-drive beans, ASF mode provides better throughput and concurrency, because in the non-ASF mode the listener is single-threaded.
  • Non-ASF mode is mainly for use with third-party messaging providers that do not support JMS ASF, which is an optional extension to the JMS specification. Non-ASF mode is also transactional but, because the path length is shorter than for ASF mode, usually provides improved performance.

[z/OS]Non-ASF mode cannot be selected on z/OS systems.

When this property is set to false (default), the message is automatically acknowledged before it is passed to the message-driven bean.

When this property is set to true, the message listener service sends a message acknowledgement to the client after the message is successfully processed by the message-driven bean, and the message listener service requests recovery of any message for which the bean generates an exception.

Information Value
Data type Boolean
Default False

RECOVERY.RETRY.INTERVAL

The time in seconds between retry attempts by a listener port to recover from a failure. The maximum number of retry attempts is defined by the MAX.RECOVERY.RETRIES property.

A failure can be caused by either of the following conditions:
  • An unexpected error has occurred when a listener port tries to get a message from the JMS provider.
  • The connection between the application server and the JMS provider has been lost, usually due to a network error.
Information Value
Data type Integer
Units Seconds
Default 60
Range 1 through 2147483647

SERVER.SESSION.POOL.REAP.TIME

The time in seconds between checks on server session pools. To enable server session pool monitoring, set this property to a non-negative value.

The SERVER.SESSION.POOL.REAP.TIME custom property is not applicable if your messaging system is running in non-ASF mode.

Information Value
Data type Integer
Units Seconds
Default -1 (disabled)
Range -2147483648 through 2147483647

SERVER.SESSION.POOL.UNUSED.TIMEOUT

The default server session pool timeout in seconds.

When this property is set to a non-negative value, it is compared to the time that has elapsed since a server session was used. If the timeout value is less than the elapsed time, the server session is removed from the server session pool and its JMS session is returned to the JMS session pool. For example, if the timeout value is one second and the time that has elapsed since a particular server session was used is two seconds, that server session is removed from the server session pool and its JMS session is returned to the JMS session pool.

The SERVER.SESSION.POOL.UNUSED.TIMEOUT custom property is not applicable if your messaging system is running in non-ASF mode.

Information Value
Data type Integer
Units Seconds
Default -1 (disabled)
Range -2147483648 through 2147483647

SERVER.SESSION.POOL.UNUSED.TIMEOUT.lpname

This property overrides the default SERVER.SESSION.POOL.UNUSED.TIMEOUT value for the listener port with the name defined for lpname. This value applies to all message-driven beans that use the specified listener port.

If this override is set to a non-negative value, it overrides the SERVER.SESSION.POOL.UNUSED.TIMEOUT property, even if the SERVER.SESSION.POOL.UNUSED.TIMEOUT property has a negative value.

If this override is set to a negative value, it disables server session pool monitoring for the specified listener port.

The SERVER.SESSION.POOL.UNUSED.TIMEOUT.lpname custom property is not applicable if your messaging system is running in non-ASF mode.

Information Value
Data type Integer
Units Seconds
Default Not set
Range -2147483648 through 2147483647