Hi all,

One of the problems I've ran into while working on jasper/myfaces is
lookup on META-INF resources via context ClassLoader
(Thread.currentThread().getContextClassLoader()). That obviously
breaks under OSGi as the context classloader may not be set or may be
set to the application classloader that does not see the expected
META-INF resources. I think we will need to deal with this problem
somehow in Geronimo because we can't realistically fix all the
dependent libraries or applications to do the right thing from OSGi
perspective.
In Equinox there is ContextFinder classloader and Buddy Policy
(http://wiki.eclipse.org/index.php/Context_Class_Loader_Enhancements)
to help deal with these context ClassLoader issues. I think we will
need something similar in Geronimo. Maybe for example, we could use
the environment information that we build for each application to
configure the classloader with the right buddy policy. That is, the
environment information would describe in some way (symbolic names,
package imports, etc.) which bundles to delegate to when looking up
META-INF resources via the context ClassLoader.

Jarek

Reply via email to