JMS (Java Message Service) is a widely-used API for Message Oriented Middleware. It allows communication between different components of a distributed application to be loosely coupled, reliable, and asynchronous.
- Supports non-blocking request-response when the non-blocking processing strategy is used. For more information on setting the strategy, see Flow Processing Strategies.
- For ActiveMQ versions starting with 5.12.2 or 5.13.0, depending on your flow and use case, you may need to set the new org.apache.activemq.SERIALIZABLE_PACKAGES system property to define which packages are allowed to be serialized in an object message. You can pass the system property through the command line when starting Mule, or set the property using a Spring bean.
JMS supports two models for messaging:
- Queues - Point-to-point
- Topics - Publish and subscribe
Mule’s JMS transport lets you easily send and receive messages to queues and topics for any message service which implements the JMS specification.
Note: This connector module only works with Mule 4 and Studio 7.