As for Connection pooling, Gianny Amour and I have briefly discussed implementing this via use of the Jakarta Commons Pool.
[I have posted yesterday an answer regading the connection pooling features and unfortunately it is still pending somewhere... However, its content is more or less duplicated by this one]
Based on the JCA specifications, the connection pooling for cci and non-cci interfaces - a la javax.sql.DataSource - can be addressed by implementing the "Connection Management" section of the specfications.
I tried to give a "fair" try to DBCP (I am a new user) and I gave up for the following reasons:
- I was unable to figure out how to get a LocalTransaction or a XAResource from a physical connection;
- I was unable to figure out how to pass a JAAS Subject and a ConnectionRequestInfo to the factory in charge of the creation of physical connections. This is quite exactly the same problem for the commons-pool package: the factory for pooled objects takes no argument or a key in the case of a Keyed pool.
- I was unable to figure out how to plug the ManagedConnectionFactory.matchManagedConnection method.
Actually, I was able to figure out how to address these points, yet after a quick assessment I have decided to (re)implement it from scratch as it was quicker (I am new to DBCP).
I have submitted an "ugly" preview of this implementation of the "Connection Management" section in order to let you say "no, this is not what we want". Just right now, I am "cleaning" and "packaging" this implementation in order to be able to submit a more appealing proposal. I should be able to submit it next week.
But one more time, this implementation does not use DBCP and commons-pool. However, I strongly believe that the pooling capabilities of PreparedStatement offered by DBCP will be re-used.
Gianny
_________________________________________________________________
Hotmail : un compte GRATUIT qui vous suit partout et tout le temps ! http://g.msn.fr/FR1000/9493
