+

Search Tips   |   Advanced Search

(dist)(iseries)

Configure activation specifications for non-ASF mode

Activation specifications are the standardized way to manage and configure the relationship between a message driven bean (MDB) running in WebSphere Application Server and a destination in WebSphere MQ. This task explains how to configure WebSphere Application Server to use non-ASF mode to processes messages.

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

The properties of an activation specification determine how a message drive bean (MDB) receives JMS messages from a WebSphere MQ queue. To configure non-ASF mode, define the properties of one or more activation specifications.

To configure non-ASF, set the Activation Specification custom property nonASFTimeout to a positive integer, that indicates that non-ASF delivery is used. The value is the time, in milliseconds, that a get request waits for messages that might not have yet arrived (a get with wait call). The default value, 0, indicates that ASF delivery is used.

  1. Start the WAS console.

  2. In the navigation pane, select Resources > JMS > Activation specifications.

  3. Optional: In the Activation specifications pane, change the Scope setting to the level at which the resource definition is visible to applications.

  4. Select the specific WebSphere MQ messaging provider JMS resource name for which to specify the custom property. This displays information about the resource.

  5. Click the JMS resource name and open the Configuration page.

  6. Under the Additional Properties section, click Custom properties.

  7. In the Custom properties page, create two custom properties: nonASFTimeout and nonASFRollbackEnabled.

    nonASFTimeout

    The time in milliseconds to wait in a synchronous get to consume a message. By default this is zero, if set to a positive number, then a number of threads specified by the server session pool size are used to get messages.

    nonASFRollbackEnabled

    By default this is true. If set to true and nonASFTimeout is greater than zero, messages are backed out on failure. If set to false messages are received outside the transactional scope and are lost on failure.

    1. In the Name field, type nonASFTimeout.

    2. In the Value field, type a positive number.

    3. In the Type field, select the java.lang.Integer type from the list.

    4. In the Name field, type nonASFRollbackEnabled.

    5. In the Value field, type true.

    6. In the Type field, select the java.lang.Boolean type from the list.

  8. Save the changes to the master configuration.

  9. To activate the changed configuration, stop and then restart the application server.


Results

You have configured the properties of a WebSphere MQ messaging provider activation specification to use non-ASF mode.

When using non-ASF mode, you must ensure that you allow a sufficient amount of time for processing to be completed before the total transaction lifetime timeout is reached, in order to avoid unwanted transaction time-outs.


Related concepts

  • Message-driven beans - automatic message retrieval
  • Message processing in ASF mode and non-ASF mode
  • How messages are processed in non-ASF mode


    Related information:

    ASF and non-ASF mode
    Configure the resource adapter for inbound communication

  • Message listener service