| BytesMessage | A BytesMessageobject is used to send a message containing a stream of uninterpreted bytes. | 
| CompletionListener | A CompletionListeneris implemented by the application and may be specified when a message is sent
 asynchronously. | 
| Connection | A Connectionobject is a client's active connection to its Jakarta Messaging provider. | 
| ConnectionConsumer | For application servers, Connectionobjects provide a special facility for creating aConnectionConsumer(optional). | 
| ConnectionFactory | A ConnectionFactoryobject encapsulates a set of connection configuration parameters that has been defined by
 an administrator. | 
| ConnectionMetaData | A ConnectionMetaDataobject provides information describing theConnectionobject. | 
| Destination | A Destinationobject encapsulates a provider-specific address. | 
| ExceptionListener | If a Jakarta Messaging provider detects a serious problem with a Connectionobject, it informs theConnectionobject'sExceptionListener, if one has been registered. | 
| JMSConnectionFactoryDefinition | An application may use this annotation to specify a Jakarta Messaging 
 ConnectionFactoryresource that it requires in its operational environment. | 
| JMSConsumer | A client using the simplified Jakarta Messaging API introduced for Jakarta Messaging 2.0 uses a JMSConsumerobject to receive messages
 from a queue or topic. | 
| JMSContext | A JMSContextis 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 
 Destinationresource that it requires in its operational environment. | 
| JMSException | 
 This is the root class of all checked exceptions in the Jakarta Messaging API. | 
| JMSProducer | A JMSProduceris a simple object used to send messages on behalf of aJMSContext. | 
| JMSRuntimeException | This is the root class of all unchecked exceptions in the Jakarta Messaging API. | 
| MapMessage | A MapMessageobject is used to send a set of name-value pairs. | 
| Message | The Messageinterface is the root interface of all Jakarta Messaging messages. | 
| MessageConsumer | A client uses a MessageConsumerobject to receive messages from a destination. | 
| MessageListener | A MessageListenerobject is used to receive asynchronously delivered messages. | 
| MessageProducer | A client uses a MessageProducerobject to send messages to a destination. | 
| ObjectMessage | An ObjectMessageobject is used to send a message that contains a serializable object in the Java programming
 language ("Java object"). | 
| Queue | A Queueobject encapsulates a provider-specific queue name. | 
| QueueBrowser | A client uses a QueueBrowserobject to look at messages on a queue without removing them. | 
| QueueConnection | A QueueConnectionobject is an active connection to a point-to-point Jakarta Messaging provider. | 
| QueueConnectionFactory | A client uses a QueueConnectionFactoryobject to createQueueConnectionobjects with a point-to-point
 Jakarta Messaging provider. | 
| QueueReceiver | A client uses a QueueReceiverobject to receive messages that have been delivered to a queue. | 
| QueueSender | A client uses a QueueSenderobject to send messages to a queue. | 
| QueueSession | A QueueSessionobject provides methods for creatingQueueReceiver,QueueSender,QueueBrowser, andTemporaryQueueobjects. | 
| ServerSession | A ServerSessionobject is an application server object that is used by a server to associate a thread with a
 Jakarta Messaging session (optional). | 
| ServerSessionPool | A ServerSessionPoolobject is an object implemented by an application server to provide a pool ofServerSessionobjects for processing the messages of aConnectionConsumer(optional). | 
| Session | A Sessionobject is a single-threaded context for producing and consuming messages. | 
| StreamMessage | A StreamMessageobject is used to send a stream of primitive types in the Java programming language. | 
| TemporaryQueue | A TemporaryQueueobject is a uniqueQueueobject created for the duration of aConnection. | 
| TemporaryTopic | A TemporaryTopicobject is a uniqueTopicobject created for the duration of aConnection. | 
| TextMessage | A TextMessageobject is used to send a message containing ajava.lang.String. | 
| Topic | A Topicobject encapsulates a provider-specific topic name. | 
| TopicConnection | A TopicConnectionobject is an active connection to a publish/subscribe Jakarta Messaging provider. | 
| TopicConnectionFactory | A client uses a TopicConnectionFactoryobject to createTopicConnectionobjects with a
 publish/subscribe Jakarta Messaging provider. | 
| TopicPublisher | A client uses a TopicPublisherobject to publish messages on a topic. | 
| TopicSession | A TopicSessionobject provides methods for creatingTopicPublisher,TopicSubscriber, andTemporaryTopicobjects. | 
| TopicSubscriber | A client uses a TopicSubscriberobject to receive messages that have been published to a topic. | 
| XAConnection | The XAConnectioninterface extends the capability ofConnectionby providing anXASession(optional). | 
| XAConnectionFactory | The XAConnectionFactoryinterface is a base interface for theXAQueueConnectionFactoryandXATopicConnectionFactoryinterfaces. | 
| XAJMSContext | The XAJMSContextinterface extends the capability ofJMSContextby adding access to a Jakarta Messaging provider's
 support for the Java Transaction API (JTA) (optional). | 
| XAQueueConnection | An XAQueueConnectionprovides the same create options asQueueConnection(optional). | 
| XAQueueSession | An XAQueueSessionprovides a regularQueueSession, which can be used to createQueueReceiver,QueueSender, andQueueBrowserobjects (optional). | 
| XASession | The XASessioninterface extends the capability ofSessionby adding access to a Jakarta Messaging provider's
 support for the Java Transaction API (JTA) (optional). | 
| XATopicConnection | An XATopicConnectionprovides the same create options asTopicConnection(optional). | 
| XATopicSession | An XATopicSessionprovides a regularTopicSession. |