Messaging Service- ( JMS )
Java Message Service was developed by Sun Microsystems
to provide a means for Java programs to access
enterprise messaging systems. Enterprise messaging
systems, often known as message oriented middleware
(MOM), provide a mechanism for integrating applications
in a loosely coupled, flexible manner. They
provide asynchronous delivery of data between
applications on a store and forward basis; that
is, the applications do not communicate directly
with each other, but instead communicate with
the MOM, which acts as an intermediary.
JMS is a set of interfaces and associated semantics
that define how a JMS client accesses the facilities
of an enterprise messaging product.
Prior to JMS, each MOM vendor provided application
access to their product through a proprietary
API, often available in multiple languages,
including the Java language. JMS provides a
standard, portable way for Java programs to
send and receive messages through a MOM product.
Programs written with JMS will be able to run
on any MOM that implements the JMS standard.
The key to JMS portability is the fact that
the JMS API is provided by Sun as a set of interfaces.
Products that want to provide JMS functionality
do so by supplying a provider that implements
these interfaces. As a developer, you build
a JMS application by defining a set of messages
and a set of client applications that exchange
The objectives of JMS, as stated in the specification,
* Define a common set of messaging concepts
* Minimize the concepts a programmer must learn
to use enterprise messaging.
* Maximize the portability of messaging applications.
* Minimize the work needed to implement a provider.
* Provide client interfaces for both point-to-point
and pub/sub domains. "Domains" is
the JMS term for the messaging models discussed
earlier. (Note: A provider need not implement