You are viewing a plain text version of this content. The canonical link for it is here.
Posted to phoenix-dev@avalon.apache.org by Steve Short <ss...@postx.com> on 2002/08/30 22:46:11 UTC

ClassLoaders

Can anyone give me a quick summary of how Phoenix sets up and uses
ClassLoaders for itself and for it's applications.  Including
application ClassLoaders and system extension ClassLoaders.

I am trying to get James working under Jboss and the problem I have is
that Phoenix cannot find AbstractLogEnabled when it starts loading the
James SAR file.

Thanks
Steve

Re: ClassLoaders

Posted by Peter Donald <pe...@apache.org>.
On Sat, 31 Aug 2002 06:46, Steve Short wrote:
> Can anyone give me a quick summary of how Phoenix sets up and uses
> ClassLoaders for itself and for it's applications.  Including
> application ClassLoaders and system extension ClassLoaders.
>
> I am trying to get James working under Jboss and the problem I have is
> that Phoenix cannot find AbstractLogEnabled when it starts loading the
> James SAR file.

The basic classloader structure is as follows

system <--- application
       <--- kernel

The system one includes all the jars in the $PHOENIX_HOME/lib directory and we 
achieve this via overiding the java.ext.path.

The kernel one includes everything in $PHOENIX_HOME/bin/lib

The application one includes all the jars in your .sar file. If any of your 
jars declare dependencies on an extension library, then phoenix will look for 
jar providing extension from 

$PHOENIX_HOME/ext

and add it into the application classloader.

That help?

-- 
Cheers,

Peter Donald
"Artists can color the sky red because they know it's blue.  Those of us who
 aren't artists must color things the way they really are or people might 
 think we're stupid." -- Jules Feiffer 


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>