Load server implementation classes and it's libraries using a private
classloader
---------------------------------------------------------------------------------
Key: GERONIMO-3929
URL: https://issues.apache.org/jira/browse/GERONIMO-3929
Project: Geronimo
Issue Type: Improvement
Security Level: public (Regular issues)
Components: kernel
Affects Versions: 2.1.1, 2.2
Reporter: syvalta
Currectly lots of geronimo-internal libraries (asm, cglib, commons-logging,
log4j etc.) are visible to the applications. This causes problems with version
mismatches, if the application includes different version of the same jar.
The most elegant solution would be to have only the spec jars visible to the
application, and the actual implementation (and its libraries) loaded by a
private classloader, which would be a distinct child of the spec-classloader,
and thus not visible to the applications. In my knowledge this kind of strategy
is implemented at least in Glassfish.
I know there are workarounds to hide classes or use inverse classloading, but
it would be nice to be able to deploy as many applications as possible without
any additional tweaking. And if every application server would do that, things
would be so much easier...
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.