About SOAP-JMS Triggers
A SOAP-JMS trigger is a JMS trigger that receives SOAP over JMS messages and routes the SOAP message to the web services stack for processing. More specifically, the SOAP-JMS trigger receives JMS messages from a destination (queue or topic) on the JMS provider. Note that a SOAP-JMS trigger can specify a message selector which limits the messages the SOAP-JMS trigger receives from that destination. Integration Server extracts the SOAP message and passes it to the internal web services stack for processing. Integration Server also retrieves JMS message properties that it passes to the web services stack, including targetService, soapAction, contentType, and JMSMessageID. These properties specify the web service descriptor and operation for which the SOAP request is intended. The web services stack then processes the SOAP message according to the web service descriptor (for example, executing request handlers) and invokes the web service operation specified in the SOAP request message.
A SOAP-JMS trigger is associated with one or more provider web service descriptors via a provider web service endpoint alias. The provider web service endpoint alias specifies the SOAP-JMS trigger that receives messages from destinations on the JMS provider. The provider web service endpoint alias is assigned to a JMS binder in a provider web service descriptor. In this way, SOAP-JMS triggers act as listeners for provider web service descriptors.
Note:
Even though a SOAP-JMS trigger is associated with one or more provider web service descriptors, the SOAP-JMS trigger can pass any SOAP-JMS message to the web services stack for processing.
The properties assigned to the SOAP-JMS trigger determine how Integration Server acknowledges the message, provides exactly-once processing, or handles transient or fatal errors.
While SOAP-JMS triggers and standard JMS triggers share many properties and characteristics, some properties available to standard JMS triggers are not available to SOAP-JMS triggers, specifically:
SOAP-JMS triggers can subscribe to one destination only. Consequently, SOAP-JMS triggers do not have joins.
Designer does not display the
Join expires and
Expire after properties for a SOAP-JMS trigger.
SOAP-JMS triggers use web services to process the payload of the JMS message.
Designer does not display the Message Routing table for SOAP-JMS triggers.
SOAP-JMS triggers cannot be used to perform ordered service execution. Standard JMS triggers use multiple routing rules and local filters to perform ordered service execution. Because SOAP-JMS triggers do not use routing rules, SOAP-JMS triggers cannot be used to perform ordered service execution.
A SOAP-JMS trigger, specifically a connection for a SOAP-JMS trigger, can process only one message at a time. Batch processing is not available for SOAP-JMS triggers.
Designer does not display the
Max batch processing property for SOAP-JMS triggers.
A transacted SOAP-JMS trigger (one that executes as part of a transaction) has additional requirements and limitations when used with web service descriptors. For more information, see the
Web Services Developer’s Guide.