Short for Java Message Service, JMS is a Sun Microsystems API that provides a standard way for Java programs to access and interact with an enterprise asynchronous messaging system. JMS is used to write business applications to create, send, receive, and read an enterprise messaging systems' messages. The JMS API defines a vendor-neutral, but Java-specific set of interfaces that identify how a JMS client accesses the facilities of an enterprise messaging product. The JMS standard is a part of the Java 2 Platform, Enterprise Edition (J2EE) and can be used to write business applications to create, send, receive and read messages.
Its important to note that while the term messaging can be used to describe e-mail, fax or instant messages, in JMS terminology the word messaging is used to describe asynchronous messages that consists of requests, reports or events that are consumed by enterprise applications and not humans. These messages contain information that is needed to coordinate systems and track progress of the enterprise.