Correlator-integrated messaging for JMS overview
The Java Message Service (JMS) provides a common programming model for asynchronously sending events and data across enterprise messaging systems. JMS supports two models, publish-and-subscribe for one-to-many message delivery and point-to-point for one-to-one message delivery. Apama's correlator-integrated messaging for JMS supports both these models.
When configured to use correlator-integrated messaging for JMS, Apama applications map downstream (incoming) JMS messages to Apama events and map upstream (outgoing) Apama events to JMS messages.
Apama's correlator-integrated messaging for JMS supports three levels of reliability, based on the reliability mechanisms provided by JMS. When the reliability level is set to EXACTLY_ONCE or AT_LEAST_ONCE, delivery is guaranteed because messages are logged by the broker in persistent storage until they are received and acknowledged. When the reliability level is set to BEST_EFFORT, message delivery is not guaranteed. For applications that do not require guaranteed message delivery, the BEST_EFFORT mode provides greater performance.
You can specify configuration for JMS in Apama Studio, either in the correlator-integrated adapter for JMS editor or by editing sections of the XML and .properties configuration files directly. Note, however that the mapping configuration should always be edited by using the Apama Studio adapter editor.
Note: For users of Software AG's Universal Messaging (UM): When using UM to send messages between Apama and non-Apama components the recommendation is to use correlator-integrated messaging for JMS to communicate with UM. However, when using UM to send messages only between Apama components (correlators and IAF adapters) the recommendation is to use UM as described in
Using Universal Messaging in Apama Applications. Using UM as described in that section requires less configuration because there is no need to provide mapping configuration for each event type.