You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by Rashmi Hunt <ra...@gmail.com> on 2009/01/08 21:51:43 UTC

classloader plug point in ContextClassLoaderServiceDiscoverer

Hi

Along the same lines of  'ContributionClassLoader' discussion earlier, is
there a way to change or plug-in a different classloader to load registered
services which are under META-INF\services.
The reason for this is, the environment which tries to bootstrap Tuscany may
have different classloader structure compared to JSE env

Tuscany tries to load services using current thread's context classloader in
ContextClassLoaderServiceDiscoverer.ContextClassLoaderServiceDiscoverer()
and based on different environments classloader structure, current thread's
context classloader may not be able to load service registered under
META-INF\service leading to services
being null when Tuscany later tries to access them.

Is there a way to change or plug-in a different classloader in
ContextClassLoaderServiceDiscoverer.ContextClassLoaderServiceDiscoverer()

Regards
Rashmi

Re: classloader plug point in ContextClassLoaderServiceDiscoverer

Posted by Rashmi Hunt <ra...@gmail.com>.
Thanks. I have opened *TUSCANY-2764*

Regards
Rashmi
On Thu, Jan 8, 2009 at 2:16 PM, Raymond Feng <en...@gmail.com> wrote:

>  I'll give a try in the 1.x stream.
>
> Thanks,
> Raymond
>
>  *From:* Rashmi Hunt <ra...@gmail.com>
> *Sent:* Thursday, January 08, 2009 12:51 PM
> *To:* dev@tuscany.apache.org
> *Subject:* classloader plug point in ContextClassLoaderServiceDiscoverer
>
> Hi
>
> Along the same lines of  'ContributionClassLoader' discussion earlier, is
> there a way to change or plug-in a different classloader to load registered
> services which are under META-INF\services.
> The reason for this is, the environment which tries to bootstrap Tuscany
> may have different classloader structure compared to JSE env
>
> Tuscany tries to load services using current thread's context classloader
> in ContextClassLoaderServiceDiscoverer.
> ContextClassLoaderServiceDiscoverer()
> and based on different environments classloader structure, current thread's
> context classloader may not be able to load service registered under
> META-INF\service leading to services
> being null when Tuscany later tries to access them.
>
> Is there a way to change or plug-in a different classloader in
> ContextClassLoaderServiceDiscoverer.ContextClassLoaderServiceDiscoverer()
>
> Regards
> Rashmi
>

Re: classloader plug point in ContextClassLoaderServiceDiscoverer

Posted by Raymond Feng <en...@gmail.com>.
I'll give a try in the 1.x stream.

Thanks,
Raymond


From: Rashmi Hunt 
Sent: Thursday, January 08, 2009 12:51 PM
To: dev@tuscany.apache.org 
Subject: classloader plug point in ContextClassLoaderServiceDiscoverer


Hi 

Along the same lines of  'ContributionClassLoader' discussion earlier, is there a way to change or plug-in a different classloader to load registered services which are under META-INF\services.
The reason for this is, the environment which tries to bootstrap Tuscany may have different classloader structure compared to JSE env  

Tuscany tries to load services using current thread's context classloader in ContextClassLoaderServiceDiscoverer.ContextClassLoaderServiceDiscoverer()
and based on different environments classloader structure, current thread's context classloader may not be able to load service registered under META-INF\service leading to services
being null when Tuscany later tries to access them.

Is there a way to change or plug-in a different classloader in ContextClassLoaderServiceDiscoverer.ContextClassLoaderServiceDiscoverer()

Regards
Rashmi