Integration Server 10.5 | JMS Client Development Guide | Working with JMS Triggers | About Message Processing | Configuring Message Processing
 
Configuring Message Processing
Keep the following points in mind when configuring message processing for a JMS trigger:
*You can configure a standard JMS trigger and its associated trigger service to process a group or “batch” of messages at one time. For information about batch processing, see About Batch Processing for Standard JMS Triggers and Guidelines for Configuring Batch Processing.
*If the JMS provider from which the JMS trigger retrieves messages does not support concurrent access by durable subscribers, you must set the Max execution threads property to 1 for the concurrent JMS trigger. Consult the documentation for your JMS provider for more information.
*Non-durable subscribers, i.e., JMS triggers that subscribe to topics but do not specify a durable subscriber, cannot receive messages in a load-balanced fashion. Because it is possible for a JMS trigger using a non-durable subscriber to process duplicates of a message, set Max execution threads to 1.
*For a destination that acts as a shared state client, the serial processing mode corresponds to a shared state order mode of publisher; a concurrent processing mode corresponds to a shared state order mode of none.
*If you use webMethods Broker as the JMS provider, changing the message processing mode for a JMS trigger can create a mismatch with the corresponding destination on the webMethods Broker. If you do not use Designer to make the changes, you need to use the webMethods Broker interface of My webMethods to update the destination.
*A concurrent JMS trigger can use multiple connections to retrieve messages from the JMS provider. For information about requirements for using multiple connections, see Using Multiple Connections to Retrieve Messages for a Concurrent JMS Trigger.
*You can only use the Max prefetch property with webMethods Broker.
*To configure message processing for a JMS trigger
1. In the Package Navigator view of Designer, open the JMS trigger for which you want to specify message processing.
2. In the Properties view, under Messaging processing, next to Processing mode, select one of the following:
Select...
To...
Serial
Specify that Integration Server should process messages received by the trigger one after the other.
Concurrent
Specify that Integration Server should process multiple messages for this trigger at one time.
In the Max execution threads property, specify the maximum number of messages that Integration Server can process concurrently.
3. If you want this trigger to perform batch processing, next to Max batch messages, specify the maximum number of messages that the trigger service can receive at one time. If you do not want the trigger to perform batch processing, leave this property set to 1. The default is 1.
4. If you want this trigger to use multiple connections to receive messages from the JMS provider, next to Connection count, specify the number of connections you want the JMS trigger to make to the JMS provider. The default is 1.
5. If you want Integration Server to use the prefetch cache with this JMS trigger, in the Properties view, under webMethods Broker (deprecated) do one of the following for Max prefetch size:
*Specify the number of messages you want Integration Server to retrieve and cache for this JMS trigger. The default is 10 messages.
*Specify -1 if you want the value of watt.server.jms.trigger.maxPrefetchSize parameter to determine how many messages Integration Server retrieves and caches for the JMS trigger.
*Specify 0 if you do not want to use the prefetch cache with this JMS trigger.
6. Click File > Save.
If the destination is Queue or Topic (Durable Subscriber) and the JMS trigger is connected to the queue or durable subscriber, Designer prompts you to update the corresponding destination on the webMethods Broker with the changed shared state order mode, click Yes to update the destination. Click No to skip the destination update. Note that messages might be lost while Designer and Integration Server make the update because Integration Server deletes and recreates the subscription as part of the update.
Note:
A JMS trigger is connected to the webMethods Broker when the specified JMS connection alias is enabled and connected to the webMethods Broker.
Related Topics
Serial Processing
Concurrent Processing