Package javax.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 JMS API transactions in a JTA transaction, an application server requires a JTA aware JMS provider. A JMS provider exposes its JTA support using an XAConnectionFactory object, which an application server uses to create XAConnection objects.

    XAConnectionFactory objects are JMS 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. JMS providers are not required to support this interface. This interface is for use by JMS 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
    • Method Detail

      • 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 JMS 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​(java.lang.String userName,
                                        java.lang.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 JMS 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 JMS 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​(java.lang.String userName,
                                     java.lang.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 JMS 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