Example usage for org.apache.commons.dbcp.managed LocalXAConnectionFactory LocalXAConnectionFactory

List of usage examples for org.apache.commons.dbcp.managed LocalXAConnectionFactory LocalXAConnectionFactory

Introduction

In this page you can find the example usage for org.apache.commons.dbcp.managed LocalXAConnectionFactory LocalXAConnectionFactory.

Prototype

public LocalXAConnectionFactory(TransactionManager transactionManager, ConnectionFactory connectionFactory) 

Source Link

Document

Creates an LocalXAConnectionFactory which uses the specified connection factory to create database connections.

Usage

From source file:org.apache.openejb.resource.jdbc.dbcp.DbcpManagedDataSource.java

@Override
protected ConnectionFactory createConnectionFactory() throws SQLException {
    if (ds instanceof XADataSource) {

        // Create the XAConectionFactory using the XA data source
        final XADataSource xaDataSourceInstance = (XADataSource) ds;
        final XAConnectionFactory xaConnectionFactory = new DataSourceXAConnectionFactory(
                getTransactionManager(), xaDataSourceInstance, username, password);
        setTransactionRegistry(xaConnectionFactory.getTransactionRegistry());
        return xaConnectionFactory;

    }//w  w  w  .j  a  v a 2  s .  co m

    // If xa data source is not specified a DriverConnectionFactory is created and wrapped with a LocalXAConnectionFactory
    final ConnectionFactory connectionFactory = new DataSourceConnectionFactory(DataSource.class.cast(ds),
            username, password);
    final XAConnectionFactory xaConnectionFactory = new LocalXAConnectionFactory(getTransactionManager(),
            connectionFactory);
    setTransactionRegistry(xaConnectionFactory.getTransactionRegistry());
    return xaConnectionFactory;
}