# Package com.sun.messaging.jms

package com.sun.messaging.jms

Provides additional Eclipse OpenMQ classes for features that relate to the MQ implementation of the Jakarta Messaging.

Eclipse OpenMQ classes in this package fall into the following basic categories:

- Custom messaging functionality that is available when standard JMS objects are cast using the interfaces in `com.sun.messaging.jms`.
- Enhanced exception classes that enable the application finer grained error handling than JMS exceptions.

### Custom Messaging Functionality

Eclipse OpenMQ provides custom message acknowledgment functionality that allows an application to acknowledge consumed messages in a `CLIENT-ACKNOWLEDGE` session with finer grained control than that available in the Jakarta Messaging Specification.

### Enhanced exception classes

Eclipse OpenMQ provides exception classes that enable MQ JMS clients to perform finer grained error handling than that available with standard JMS exceptions.

See Jakarta Messaging API.

- Related Packages
  Package
  Description
  com.sun.messaging
  Provides the Eclipse OpenMQ(tm) public classes.
  com.sun.messaging.jms.notification
  Provides a notification API for the MQ client runtime to inform an application about a MQ connection state changes.
  com.sun.messaging.xml
  Provides additional Eclipse OpenMQ(tm) classes for features that relate to XML and SOAP messaging.
- Class
  Description
  Connection
  This interafce provides the following API for the MQ applications:
  IllegalStateException
  This exception is thrown when a method is invoked at an illegal or inappropriate time or if the provider is not in an appropriate state for the requested operation.
  InvalidClientIDException
  This exception must be thrown when a client attempts to set a connection's client ID to a value that is rejected by a provider.
  InvalidDestinationException
  This exception must be thrown when a destination either is not understood by a provider or is no longer valid.
  InvalidSelectorException
  This exception must be thrown when a JMS client attempts to give a provider a message selector with invalid syntax.
  JMSException
  This class encapsulates MQ JMSExceptions.
  JMSSecurityException
  This exception must be thrown when a provider rejects a user name/password submitted by a client.
  Message
  The `com.sun.messaging.jms.Message` interface defines enhanced capabilities of a JMS Message in Eclipse OpenMQ(tm).
  MessageEOFException
  This exception must be thrown when an unexpected end of stream has been reached when a `StreamMessage` or `BytesMessage` is being read.
  MessageFormatException
  This exception must be thrown when a JMS client attempts to use a data type not supported by a message or attempts to read data in a message as the wrong type.
  MQIllegalStateRuntimeException
  This class is the MQ-specific implementation of jakarta.jms.IllegalStateRuntimeException and adds a new constructor and the methods setLogState and getlogState
  MQInvalidClientIDRuntimeException
  This class is the MQ-specific implementation of jakarta.jms.InvalidClientIDRuntimeException and adds the methods setLogState and getlogState
  MQInvalidDestinationRuntimeException
  This class is the MQ-specific implementation of jakarta.jms.InvalidDestinationRuntimeException and adds the methods setLogState and getlogState
  MQInvalidSelectorRuntimeException
  This class is the MQ-specific implementation of jakarta.jms.InvalidSelectorRuntimeException and adds the methods setLogState and getlogState
  MQMessageFormatRuntimeException
  This class is the MQ-specific implementation of jakarta.jms.MessageFormatRuntimeException and adds the methods setLogState and getlogState
  MQMessageNotWriteableRuntimeException
  This class is the MQ-specific implementation of jakarta.jms.MessageNotWriteableRuntimeException and adds a new constructor and the methods setLogState and getlogState
  MQRuntimeException
  This class is the MQ-specific implementation of jakarta.jms.JMSRuntimeException and adds the methods setLogState and getlogState
  MQSecurityRuntimeException
  This class is the MQ-specific implementation of jakarta.jms.JMSSecurityRuntimeException and adds the methods setLogState and getlogState
  MQTransactionInProgressRuntimeException
  This class is the MQ-specific implementation of jakarta.jms.MQTransactionInProgressRuntimeException and adds the methods setLogState and getlogState
  MQTransactionRolledBackRuntimeException
  This class is the MQ-specific implementation of jakarta.jms.TransactionRolledBackRuntimeException and adds the methods setLogState and getlogState
  QueueConnection
  Provide interface to create a MQ NO_ACKNOWLEDGE queue session.
  ResourceAllocationException
  This exception is thrown when a provider is unable to allocate the resources required by a method.
  Session
  MQ JMS Session.
  TopicConnection
  Provide interface to create a MQ NO_ACKNOWLEDGE Topic Session.
  TransactionRolledBackException
  This exception must be thrown when a call to `Session.commit` results in a rollback of the current transaction.