Yes, this solution worked for me. I set the context classloader on the
thread to the osgi classloader and then once I am done getting the Factory
and
Parser objects, I reset it back to the original classloader.
Thank you.
Zeenat
IBM Websphere Process Server
"Sergio Bossa" <
sergio.bossa@...>
07/11/2008 01:34 AM
Please respond to
abdera-user@...
To
abdera-user@...
cc
Subject
Re: Classloader problems when creating Factory and Parser objects
On Thu, Jul 10, 2008 at 7:24 PM, Zeenat Lainwala <
lainwala@...>
wrote:
> In my product, the abdera classes are packaged in an OSGI bundle. This
is
> version 0.4.0. When abdera creates a Factory, Parser, etc, it uses the
> application classloader and the system class loader
> (org.apache.abdera.util.ServiceUtil.java locateInstance) instead of
using
> the classloader from
> the bundle. Since the Factory, Parser etc classes are in the bundle, the
> classloading fails.
Hi,
you may try to overwrite the current thread classloader by calling the
following method into your code:
Thread.currentThread().setContextClassLoader(osgiClassloader).
Let us know if it works.
Cheers,
Sergio B.
--
Sergio Bossa
Software Passionate, Java Technologies Specialist and Open Source
Enthusiast.
Blog :
http://sbtourist.blogspot.comSourcesense - making sense of Open Source :
http://www.sourcesense.comPro-netics s.p.a. :
http://www.pronetics.it