-- Dirk
hammett wrote:
Hey Dirk
I read some non-good comments about DBCP in some posts on TheServerSide. These really bothered me, and I'm reconsidering the usage. Also I spent some hours digging into JBoss and Geronimo source tree, and find out that the best way to handle Connections/Pool/Transaction is to use JCA and JTA. A simple JTA spec implementation is trivial, but a JCA is not. I'm working on that right this moment. Not sure if we can join efforts with Geronimo guys cause the JMX mess all around.
About your question, the container intercepts look ups for connections (through JNDI) and associates the connection with a component activity context - or other strategy. If a Transaction is already in place, or beguns after that, the container asks for a XAResource and enlists it to get it working with two phase commit protocol. A smart container implementation will use the same enlisted connection throught the transaction lifecycle - although it should not share it. The container can also register a Syncronization within the transaction to release the resources as soon as the transactions end (successful or not).
Right now I'm working just in the interfaces definitions. Then I'll work on test cases and finally the implementation. Let me know if you'd like to give me a hand on this, or if ASF-Commons would like such implementation.
Cheers, hammett
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
