This software allows to pool objects, JDBC connections and XA connections. It comes from Enhydra application server from Lutris. Now the project is hosted by the ObjectWeb consortium and managed by Experlog. It exports a DataSource (with a pool) which is a factory of PooledConnection, and XADataSource (with a pool) which is a factory of XAConnection (connections that can be used in distributed transactions). PooledConnection objects are created by a ConnectionPooledDataSource object, and pooled in a classical pool (GenericPool). XAConnection objects are built with a XADataSource object.
Download:
XaPool on OWForgeMailing-list:
XaPool tar ball :xapool-1.0.tar.gz
XaPool tar ball :xapool-1.1.tar.gz
subscribe to the public mailing-list on OWForgeDocumentation:
view archives of the public mailing-list
README.txt
Javadoc API 1.1
Javadoc API 1.0
The classic pool offers common and useful operations:1.1: ---- This version includes major changes, and correct a lot of bugs. Main changes are: - AutoCommit value is now saved before the begin of the transaction and restored to the commit or rollback of the transaction - when no transaction is defined, and the AutoCommit flag sets to false, when the user calls close() on the connection, the connection is rollbacked - fixed bug when the connection is opened before the begin of the transaction and close after the commit or rollback (connection enrolled a posteriori) - fixed bugs in the cache prepared statement mechanism - added commons logging to log inside XAPool - added 5 more examples (tests) to demonstrate the XAPool functionalities To do list: ----------- - validate with 2.0 JDBC driver - validate CallableStatement - add a complete restore mechanism with JNDI context (future contrib from Jeff)
GenericPool: use of the pool, just to show it is a classical poolLicense:
Pool Datasource: a sample to use connection from a datasource
XA Pool Datasource: to get connection which can be used in distributed transactions (this example comes from JOTM)
MultipleConnection: demonstrate the use of multiple connections in the same transaction
MultipleTransaction: one connection and multiple transaction
FalseRollback: here no transaction, but a rollback on the connection close()
SaveAutoCommit: save the state of the autocommit flag before the beginnig of the transaction and restore it after the commit or the rollback of the transaction
SimpleStatement: test the Statement implementation
Enhydra Public License (EPL)Links:
[Last changes: Apr 01, 2003]