Package jakarta.jms

Interface XAConnectionFactory

All Known Subinterfaces:
XAQueueConnectionFactory, XATopicConnectionFactory

public interface XAConnectionFactory
The XAConnectionFactory interface is a base interface for the XAQueueConnectionFactory and XATopicConnectionFactory interfaces.

Some application servers provide support for grouping JTA capable resource use into a distributed transaction (optional). To include Jakarta Messaging API transactions in a JTA transaction, an application server requires a JTA aware JMS provider. A Jakarta Messaging provider exposes its JTA support using an XAConnectionFactory object, which an application server uses to create XAConnection objects.

XAConnectionFactory objects are Jakarta Messaging administered objects, just like ConnectionFactory objects. It is expected that application servers will find them using the Java Naming and Directory Interface (JNDI) API.

The XAConnectionFactory interface is optional. Jakarta Messaging providers are not required to support this interface. This interface is for use by Jakarta Messaging providers to support transactional environments. Client programs are strongly encouraged to use the transactional support available in their environment, rather than use these XA interfaces directly.

Since:
JMS 1.0
Version:
Jakarta Messaging 2.0
  • Method Details

    • createXAConnection

      XAConnection createXAConnection() throws JMSException
      Creates an XAConnection with the default user identity. The connection is created in stopped mode. No messages will be delivered until the Connection.start method is explicitly called.
      Returns:
      a newly created XAConnection
      Throws:
      JMSException - if the Jakarta Messaging provider fails to create an XA connection due to some internal error.
      JMSSecurityException - if client authentication fails due to an invalid user name or password.
      Since:
      JMS 1.1
    • createXAConnection

      XAConnection createXAConnection(String userName, String password) throws JMSException
      Creates an XAConnection with the specified user identity. The connection is created in stopped mode. No messages will be delivered until the Connection.start method is explicitly called.
      Parameters:
      userName - the caller's user name
      password - the caller's password
      Returns:
      a newly created XAConnection
      Throws:
      JMSException - if the Jakarta Messaging provider fails to create an XA connection due to some internal error.
      JMSSecurityException - if client authentication fails due to an invalid user name or password.
      Since:
      JMS 1.1
    • createXAContext

      XAJMSContext createXAContext()
      Creates a XAJMSContext with the default user identity

      A connection and session are created for use by the new XAJMSContext. The connection is created in stopped mode but will be automatically started when a JMSConsumer is created.

      Returns:
      a newly created XAJMSContext
      Throws:
      JMSRuntimeException - if the Jakarta Messaging provider fails to create the XAJMSContext due to some internal error.
      JMSSecurityRuntimeException - if client authentication fails due to an invalid user name or password.
      Since:
      JMS 2.0
    • createXAContext

      XAJMSContext createXAContext(String userName, String password)
      Creates a JMSContext with the specified user identity

      A connection and session are created for use by the new XAJMSContext. The connection is created in stopped mode but will be automatically started when a JMSConsumer is created.

      Parameters:
      userName - the caller's user name
      password - the caller's password
      Returns:
      a newly created JMSContext
      Throws:
      JMSRuntimeException - if the Jakarta Messaging provider fails to create the JMSContext due to some internal error.
      JMSSecurityRuntimeException - if client authentication fails due to an invalid user name or password.
      Since:
      JMS 2.0