Java™ Message Service (JMS) is the standard Java API for messaging. It supports the two messaging categories: point-to-point messaging and publish/subscribe messaging. JMS is defined as part of the Java 2 Enterprise Edition 1.3 and 1.4 definitions. It defines a package of Java interfaces, which allows for provider-independence, but does not necessarily allow for provider interoperability.
The JMS APIs are provided with the Lotus® Expeditor runtime. This runtime also includes a point to point JMS provider based on MQe messaging and a publish and subscriber provider based on MQTT messaging. The MQe classes for JMS are a set of Java classes that implement the JMS interfaces to enable JMS programs to access MQe systems, while the MQTT client classes for JMS enable JMS applications to access Lotus Expeditor micro brokers. Both MQe and micro broker support the bridging of messages to enterprise messaging systems as well.
IBM® has several implementations of JMS. Interoperability is provided between them.
More information about the benefits of the JMS API is available at: http://java.sun.com
These JMS administered objects are stored in a Naming Directory Interface (JNDI) namespace. A JMS application can retrieve these objects from the namespace and use them without needing to know which vendor provided the implementation.