Fatal Error Handling for Non-Transacted JMS Triggers
You can specify that Integration Server suspend a JMS trigger automatically if a fatal error occurs during trigger service execution. A fatal error occurs when the trigger service ends because of an exception.
If a trigger service ends because of an exception, and you configured the JMS trigger to suspend on fatal errors, Integration Server suspends the trigger and acknowledges the message to the JMS provider. The JMS trigger remains suspended until one of the following occurs:
You enable the trigger using the
pub.trigger:enableJMSTriggers service.
You enable the trigger using
Integration Server Administrator.
Integration Server restarts or the package containing the trigger reloads. (When
Integration Server suspends a trigger because of a fatal error,
Integration Server considers the change to be temporary. For more information about temporary vs. permanent state changes for triggers, see
webMethods Integration Server Administrator’s Guide.)
Automatic suspension of a trigger can be especially useful for serial triggers that are designed to process a group of messages in a particular order. If the trigger service ends in error while processing the first message, you might not want the trigger to proceed with processing the subsequent messages in the group. If Integration Server automatically suspends the trigger, you have an opportunity to determine why the trigger service did not execute successfully.
Important: | If you disable or suspend a SOAP-JMS trigger that acts as a listener for one or more provider web service descriptors, Integration Server will not retrieve any messages for those web service descriptors until the trigger is enabled. |
You can handle the exception that causes the fatal error by configuring Integration Server to generate JMS retrieval failure events for fatal errors and by creating an event handler that subscribes to JMS retrieval failure events. Integration Server passes the event handler the contents of the JMS message as well as information about the exception.
Integration Server handles fatal errors for transacted JMS differently than for non-transacted JMS triggers. For information about fatal error handling for transacted JMS triggers, see
Fatal Error Handling for Transacted
JMS Triggers.