XAPool - XAPool is Another Pool !
Description:
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.
The classic pool offers common and useful operations:
- lifetime of objects
- a common log writer
- a minimum size
- a maximum size
- the possibility to setup a way to wait for objects when all objects are used
- an object check level to verify object before returning to user
- a garbage collection option
- a common PoolHelper object, to create, verify and destroy object
- objects are linked to a generation of objects when they are created
Download:
XaPool on OWForge :xapool-1.0
XaPool tar ball :xapool-1.0.tar.gz
Documentation:
README.txt
Examples:
- GenericPool: is a simple use of the pool, just to show it is a classical pool
- Pool Datasource: a sample to use connection from a datasource
- XA Pool Datasource: a sample to get connection which can be used in distributed transactions (this example comes from JOTM)
License:
Enhydra Public License (EPL)
Links:
Success stories
- ExperLOG embeddes XaPool in its e-commerce suite : ExperSHOP
- JOTM (Java Open Transaction Manager) uses XaPool as XA pool datasource
To do list:
- to implement JCA (Java Connector Architecture)
[Last changes: Mar 20, 2003]