The JMS integration interface supports interactions between your Pega Platform application and other systems through the Java Message Service (JMS). The Pega Platform supports JMS through both services and connectors. JMS services can receive (consume) messages from a JMS topic or queue and produce responses to those messages.
This facility supports both point-to-point and publish/subscribe messaging models. It supports durable subscriptions, automatic acknowledgment, and, if the Pega Platform is deployed as an enterprise application, transaction-based processing.
To provide a JMS service, your Pega Platform system must be able to function as a JMS client. So if the Pega Platform is deployed on a non-Java EE application server like Apache Tomcat, follow the vendor's documentation for that application server and configure the Pega Platform system as a JMS client.
JMS services generally process service requests synchronously. That is, they immediately perform their requested processing and return a configured response while the calling application waits. However, you can configure JMS services to process service requests asynchronously, which means the service queues the request for asynchronous execution and the calling application calls back later for the results. Additionally, you can configure synchronous JMS services to check for specific error conditions that you expect will be temporary — work item locks, for example — and then queue service requests that fail for those reasons for another attempt at a later time.
Use the Application Explorer to see Service JMS rules in your application. Use the Records Explorer to list all Service JMS rules that are available to you.
For a description of the development process, see the following Pega Community articles:
- How to set up a JMS service
- How asynchronous service processing works
- Configure a service to process requests asynchronously
- Configure a service that queues failed service requests for another attempt
Service JMS rules belong to the Integration-Services category. A Service JMS rule is an instance of the Rule-Service-JMS class.
- Service JMS rules - Completing the Create, Save As, or Specialization form
- Service JMS form - Completing the Service tab
Use the Service tab to identify the activity that this Service JMS rule calls.
- Service JMS form - Completing the Request tab
Use the Request tab to map the incoming data to properties on the clipboard.
- Service JMS form - Completing the Response tab
If the JMS service uses the Point-to-Point messaging model and the request messages will have a queue or topic specified in their JMSReplyTo header fields, use the Response tab to specify how the service rule constructs the response to be sent. You can set up more than one response, based on conditions. (If the JMS service uses the Publish-Subscribe messaging model, responses are not expected; leave this tab blank.)
- Unit testing a Service JMS rule
Use the unit testing feature to verify that the operations of a Service JMS rule function correctly before you add an external component to your testing process.