Solace Jakarta Messaging API
The Solace Messaging API for Jakarta Messaging (formerly JMS) uses the standard Jakarta Messaging interface to provide messaging service for Java-based applications through a Solace event broker. For information about version support in the Solace Jakarta Messaging API see Supported Environments.
The Solace Jakarta Messaging API supports the following Message Exchange Patterns:
- Publish/Subscribe
- Point to Point
- Request/Reply
For information about managing Solace JNDI objects in the Solace Jakarta Messaging API, see Solace JNDI Objects.
About Jakarta Messaging and JMS
The Jakarta Messaging API is the evolution of the Java Message Service (JMS) specification, now maintained by the Eclipse Foundation as part of Jakarta EE. This is an industry-wide transition that reflects the modern Java ecosystem.
The Solace JMS API remains fully supported and unaffected. The Solace Jakarta Messaging API is our modern Jakarta EE-compatible messaging API, recommended for new development.
Both namespaces provide the same JMS 1.1 functionality. Your existing JMS code continues to work without changes—simply update import statements if migrating to the jakarta.jms namespace.
Get Started
If you haven't used Jakarta Messaging (formerly JMS) and Solace event brokers together before, we recommend that you first look at the Jakarta Messaging section in Messaging Components and Application Interactions to learn how the Solace event broker's messaging components make data move from message producers to the event broker, and from the event broker to consumers. You may want to check out our Jakarta Messaging Tutorials.
Before you can start working with the Solace Jakarta Messaging API, you must have access to a Solace event broker to test and use your Jakarta Messaging application.
You can get started using a Solace event broker in any of these ways:
- If you have an appliance event broker or software event broker already deployed, obtain
- the hostname or IP address of an event broker to test against
- a username and password to access it
- a Message VPN in which you can produce and consume messages
- You can set up a software event broker as a container image. For more information, see Setting Up Container Images.
- If you have Solace Cloud, you create a new event broker service. For more information, see Creating Event Broker Services.
Resource Adapters
To use the Solace Jakarta Messaging implementation in a Java Platform, Enterprise Edition (Java EE) or Jakarta EE application server environment, you can deploy a Solace‑provided, Java Connector Architecture (JCA) Resource Adapter. This adapter provides Java EE and Jakarta EE applications with connectivity to event brokers.
Solace provides two variants of the JCA Resource Adapter:
- Solace JCA Resource Adapter for Jakarta Messaging—For modern Jakarta EE application servers (such as WildFly 27+ and JBoss EAP 8+). For more information, see Solace JCA Resource Adapter for Jakarta Messaging Overview.
- Solace JCA Resource Adapter for JMS—For legacy Java EE application servers (such as JBoss EAP 7, WebLogic, WebSphere Traditional). For more information, see Using the API in JEE Environments.




