background image

Basic JMS API Concepts

<< Messaging in an Enterprise Application | JMS API Architecture >>
<< Messaging in an Enterprise Application | JMS API Architecture >>

Basic JMS API Concepts

How Does the JMS API Work with the Java EE Platform?
When the JMS API was introduced in 1998, its most important purpose was to allow Java
applications to access existing messaging-oriented middleware (MOM) systems, such as
MQSeries from IBM. Since that time, many vendors have adopted and implemented the JMS
API, so a JMS product can now provide a complete messaging capability for an enterprise.
Beginning with the 1.3 release of the Java EE platform, the JMS API has been an integral part of
the platform, and application developers can use messaging with Java EE components.
The JMS API in the Java EE platform has the following features.
Application clients, Enterprise JavaBeans (EJB) components, and web components can send
or synchronously receive a JMS message. Application clients can in addition receive JMS
messages asynchronously. (Applets, however, are not required to support the JMS API.)
Message-driven beans, which are a kind of enterprise bean, enable the asynchronous
consumption of messages. A JMS provider can optionally implement concurrent processing
of messages by message-driven beans.
Message send and receive operations can participate in distributed transactions, which
allow JMS operations and database accesses to take place within a single transaction.
The JMS API enhances the Java EE platform by simplifying enterprise development, allowing
loosely coupled, reliable, asynchronous interactions among Java EE components and legacy
systems capable of messaging. A developer can easily add new behavior to a Java EE application
that has existing business events by adding a new message-driven bean to operate on specific
business events. The Java EE platform, moreover, enhances the JMS API by providing support
for distributed transactions and allowing for the concurrent consumption of messages. For
more information, see the Enterprise JavaBeans specification, v3.0.
The JMS provider can be integrated with the application server using the Java EE Connector
architecture. You access the JMS provider through a resource adapter. This capability allows
vendors to create JMS providers that can be plugged in to multiple application servers, and it
allows application servers to support multiple JMS providers. For more information, see the
Java EE Connector architecture specification, v1.5.
Basic JMS API Concepts
This section introduces the most basic JMS API concepts, the ones you must know to get started
writing simple JMS client applications:
"JMS API Architecture" on page 897
"Messaging Domains" on page 898
"Message Consumption" on page 900
Basic JMS API Concepts
The Java EE 5 Tutorial · September 2007
896