| BytesMessage | 
 A BytesMessage object is used to send a message containing a stream of uninterpreted bytes. 
 | 
| CompletionListener | 
 A CompletionListener is implemented by the application and may be specified when a message is sent
 asynchronously. 
 | 
| Connection | 
 A Connection object is a client's active connection to its Jakarta Messaging provider. 
 | 
| ConnectionConsumer | 
 For application servers, Connection objects provide a special facility for creating a
 ConnectionConsumer (optional). 
 | 
| ConnectionFactory | 
 A ConnectionFactory object encapsulates a set of connection configuration parameters that has been defined by
 an administrator. 
 | 
| ConnectionMetaData | 
 A ConnectionMetaData object provides information describing the Connection object. 
 | 
| Destination | 
 A Destination object encapsulates a provider-specific address. 
 | 
| ExceptionListener | 
 If a Jakarta Messaging provider detects a serious problem with a Connection object, it informs the Connection
 object's ExceptionListener, if one has been registered. 
 | 
| JMSConnectionFactoryDefinition | 
 An application may use this annotation to specify a Jakarta Messaging 
 ConnectionFactory resource that it requires in its operational environment. 
 | 
| JMSConsumer | 
 A client using the simplified Jakarta Messaging API introduced for Jakarta Messaging 2.0 uses a JMSConsumer object to receive messages
 from a queue or topic. 
 | 
| JMSContext | 
 A JMSContext is the main interface in the simplified Jakarta Messaging API introduced for Jakarta Messaging 2.0. 
 | 
| JMSDestinationDefinition | 
 An application may use this annotation to specify a Jakarta Messaging 
 Destination resource that it requires in its operational environment. 
 | 
| JMSException | 
 
 This is the root class of all checked exceptions in the Jakarta Messaging API. 
 | 
| JMSProducer | 
 A JMSProducer is a simple object used to send messages on behalf of a JMSContext. 
 | 
| JMSRuntimeException | 
 This is the root class of all unchecked exceptions in the Jakarta Messaging API. 
 | 
| MapMessage | 
 A MapMessage object is used to send a set of name-value pairs. 
 | 
| Message | 
 The Message interface is the root interface of all Jakarta Messaging messages. 
 | 
| MessageConsumer | 
 A client uses a MessageConsumer object to receive messages from a destination. 
 | 
| MessageListener | 
 A MessageListener object is used to receive asynchronously delivered messages. 
 | 
| MessageProducer | 
 A client uses a MessageProducer object to send messages to a destination. 
 | 
| ObjectMessage | 
 An ObjectMessage object is used to send a message that contains a serializable object in the Java programming
 language ("Java object"). 
 | 
| Queue | 
 A Queue object encapsulates a provider-specific queue name. 
 | 
| QueueBrowser | 
 A client uses a QueueBrowser object to look at messages on a queue without removing them. 
 | 
| QueueConnection | 
 A QueueConnection object is an active connection to a point-to-point Jakarta Messaging provider. 
 | 
| QueueConnectionFactory | 
 A client uses a QueueConnectionFactory object to create QueueConnection objects with a point-to-point
 Jakarta Messaging provider. 
 | 
| QueueReceiver | 
 A client uses a QueueReceiver object to receive messages that have been delivered to a queue. 
 | 
| QueueSender | 
 A client uses a QueueSender object to send messages to a queue. 
 | 
| QueueSession | 
 A QueueSession object provides methods for creating QueueReceiver, QueueSender,
 QueueBrowser, and TemporaryQueue objects. 
 | 
| ServerSession | 
 A ServerSession object is an application server object that is used by a server to associate a thread with a
 Jakarta Messaging session (optional). 
 | 
| ServerSessionPool | 
 A ServerSessionPool object is an object implemented by an application server to provide a pool of
 ServerSession objects for processing the messages of a ConnectionConsumer (optional). 
 | 
| Session | 
 A Session object is a single-threaded context for producing and consuming messages. 
 | 
| StreamMessage | 
 A StreamMessage object is used to send a stream of primitive types in the Java programming language. 
 | 
| TemporaryQueue | 
 A TemporaryQueue object is a unique Queue object created for the duration of a Connection. 
 | 
| TemporaryTopic | 
 A TemporaryTopic object is a unique Topic object created for the duration of a Connection. 
 | 
| TextMessage | 
 A TextMessage object is used to send a message containing a java.lang.String. 
 | 
| Topic | 
 A Topic object encapsulates a provider-specific topic name. 
 | 
| TopicConnection | 
 A TopicConnection object is an active connection to a publish/subscribe Jakarta Messaging provider. 
 | 
| TopicConnectionFactory | 
 A client uses a TopicConnectionFactory object to create TopicConnection objects with a
 publish/subscribe Jakarta Messaging provider. 
 | 
| TopicPublisher | 
 A client uses a TopicPublisher object to publish messages on a topic. 
 | 
| TopicSession | 
 A TopicSession object provides methods for creating TopicPublisher, TopicSubscriber, and
 TemporaryTopic objects. 
 | 
| TopicSubscriber | 
 A client uses a TopicSubscriber object to receive messages that have been published to a topic. 
 | 
| XAConnection | 
 The XAConnection interface extends the capability of Connection by providing an XASession
 (optional). 
 | 
| XAConnectionFactory | 
 The XAConnectionFactory interface is a base interface for the XAQueueConnectionFactory and
 XATopicConnectionFactory interfaces. 
 | 
| XAJMSContext | 
 The XAJMSContext interface extends the capability of JMSContext by adding access to a Jakarta Messaging provider's
 support for the Java Transaction API (JTA) (optional). 
 | 
| XAQueueConnection | 
 An XAQueueConnection provides the same create options as QueueConnection (optional). 
 | 
| XAQueueSession | 
 An XAQueueSession provides a regular QueueSession, which can be used to create QueueReceiver,
 QueueSender, and QueueBrowser objects (optional). 
 | 
| XASession | 
 The XASession interface extends the capability of Session by adding access to a Jakarta Messaging provider's
 support for the Java Transaction API (JTA) (optional). 
 | 
| XATopicConnection | 
 An XATopicConnection provides the same create options as TopicConnection (optional). 
 | 
| XATopicSession | 
 An XATopicSession provides a regular TopicSession. 
 |