Why not apply the effort to something already done and compatibly
licensed?
This:
http://dog.intalio.com/ots.html
Appears to be a Berkeley style licensed:
http://dog.intalio.com/license.html
Transaction monitor.
"Overview
The OpenORB Transaction Service is a very scalable transaction monitor
which also provides several extensions like XA management, a management
interface to control all transaction processes and a high reliable
recovery system.
By coordinating OpenORB and OpenORB Transaction Service, you provide a
reliable and powerful foundation for building large scalable distributed
applications.
Datasheet
The OpenORB Transaction Service is a fully compliant implementation of
the OMG Transaction Service specification.
The OpenORB Transaction Service features are : Management of distributed transactions with a two phase commit
protocol Sub Transactions management ( nested transactions ) Propagation of the transaction context between CORBA
objectsManagement of distributed transactions propagation through databases
with the XA protocol Automatic logs to be able to make recovery in case of failures Can be used as a transaction
initiatoror subordinate High-performance, multiple thread architecture Developed with POA Provides a management
interfaceto control all transactions Full support of JTA JDBC pooling and automatic resource enlistment
Download
To download the OpenORB Transaction Service, do one of the following : CVS : you can use CVS to grab the sources
directly. FTP : you get either a CVS snapshot or a prebuilt version
To use one of these possibilities, go to the Download Services page.
ChangeLog
August 15th 2001. Version 1.2.0. Changed the transaction client side to support late binding to the
transaction monitor. Bug fixed in the transactional client interceptor. This bug was due to
a change in the OpenORB behavior concerning the slot
To get previous change log, please refer to the CHANGELOG file available
within this service distribution."