Cocoon has a potential classloader issue.  The Excalibur that comes with
Cocoon has support for the <driver/> entry in the JdbcDataSource--and uses
the Context ClassLoader to load the driver's class.  The only problem is
that even though the class is properly loaded, it is not loaded in the
same classloader that created the JdbcDataSource.

Now, the question becomes: Should JdbcDataSource use the context classloader,
or should Cocoon fix the classloader issue?  If JdbcDataSource does it, that
means the class will be loaded by the same classloader that created JdbcDataSource.
This may or may not be a bad thing.  If JdbcDataSource is loaded by the
Boot ClassLoader, then the driver will be loaded for the Boot ClassLoader.

The thing is that the JdbcDataSource works fine when the ClassLoader in the
Context ClassLoader (Thread.currentThread().getContextClassLoader()) is the
same one or a parent of the classloader that loaded the JdbcDataSource.
There is some wierdness with the DriverManager.getConnection() so it may be
that the Driver class should be loaded with the the same classloader as
JdbcDataSource.

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, email: [EMAIL PROTECTED]

Reply via email to