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.