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.

Reply via email to