geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From David Jencks <>
Subject Datasource and adapter configuration is too complicated -- advice wanted.
Date Mon, 03 May 2004 01:13:29 GMT
The current scheme for configuration a ConnectionManager when deploying  
a datasource or resource adapter is less than ideal. Here's a typical  
configuration element from a geronimo-ra.xml.


There are basically 2 kinds of problems with this:

1. There are dependencies among the flags in that some of the flags  
have meaning only if others have a certain value.  For instance  
useTransactionCaching is looked at only it useTransactions is set.

2. Although the underlying interceptor-based design of the  
ConnectionManager is very flexible and should let you easily set up  
your own custom style ConnectionManager, right now you are limited to  
the particular implementation supplied in geronimo.  Using a different  
ConnectionManager implementation would involve writing a new deployment  

One possibility to improve (1) would be to use more nested xml with the  
schema grammar controlling what combinations are possible

for instance:

                         <localTransactions/><!-- implies  
useTransactions and useTransactionCaching-->

One possibility to improve (2) would be to allow either the explicit  
configuration such as that just shown or a reference to a gbean.  The  
deployer would assume that the gbean implemented the appropriate  
interfaces, and normal gbean configuration could be used with it.  With  
an abstract superclass that had the methods to call an interceptor  
chain, a user could easily write a connection manager implementation  
with any custom hardcoded list of interceptors.


I'd appreciate comments and suggestions about other ways to provide  
clearer configuration options and more flexibility.

Many thanks,
David Jencks

View raw message