You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by "P.van Kemenade" <pi...@v2.nl> on 2003/08/26 17:49:25 UTC

RE: newbie - finding class files

Hi

I found this old thread about extending WebdavServlet,
in which Andreas Probst notes his webapp cant load classes
from the $CATALINA_HOME/servlet/lib/ dir.

this url
	http://jakarta.apache.org/tomcat/tomcat-4.0-doc/class-loader-howto.html
makes it clear why.

but now: how should I  extend WebdavServlet inside my webapp ?
If i put my own classes in the org.apache.bla package, it can't load
the classes from my webapp, ofcourse.

should I copy all jar files from  $CATALINA_HOME/servlet/lib/*jar
to my webapps /WEB-INF/lib ?

  that should work, but it sounds ugly.



>
> On Tue, 16 Jul 2002, Andreas Probst wrote:
>
> > Date: Tue, 16 Jul 2002 13:59:49 +0200
> > From: Andreas Probst <an...@gmx.net>
> > Reply-To: Tomcat Users List <to...@jakarta.apache.org>
> > To: tomcat-user@jakarta.apache.org
> > Subject: RE: newbie - finding class files
> >
> >
> > > On Mon, 15 Jul 2002, Andreas Probst wrote:
> > >
> > > >
> > > > Hi all,
> > > >
> > > > does Tomcat really look into tomcatdir/server/lib? For me it  
> seems
> > > > Tomcat doesn't.
> > > >
> > >
> > > This directory is only visible to the classloader for Tomcat  
> itself, not
> > > for webapps.  There is a special rule that makes servlet classes in
> > > package "org.apache.catalina" available to webapps anyway,  
> however, which
> > > is why the standard WebdavServlet (as well as the other Tomcat  
> features
> > > that are available via servlets) can be loaded.
> > >
> > > Craig
> >
> > Thank you Craig.
> >
> > Could you please tell more about the rule or give a pointer. The
> > class-loader-info of the Tomcat-Docu says nothing about the rule, but
> > says, that "These classes and resources are TOTALLY invisible to web
> > applications".
> >
>
> Actually, the rule is very simple, and it is there in the docs.  Look  
> at
> the picture of the class loader hierarchy in the Tomcat docs:
>
>    
> http://jakarta.apache.org/tomcat/tomcat-4.0-doc/class-loader-> howto.html
>
> The classes that are visible to a web application are those in the  
> class
> loader for that webapp, and any of it's parent class loaders.  In other
> words, an application can see the "WebappX" class loader for itself,  
> plus
> the "Shared", "Common", "System", and "Bootstrap" class loaders.  It  
> can
> *not* see the "Catalina" class loader.


thanks,
*-pike
-----------------------
Editorship& Styling 'Techniek is waistline, Publish the plan!'
	What make the method strong until for instance one newspaperman who
	wish publish and not with technique wish turn troublesome fallen? The
	clientèle with all the bye bye the handshake with examples decrepit.  
The
	motto: 'Techniek is waistline, publish the plan!'

http://www.worldlanguage.com/Translation.htmÂ