You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by Bob Jamison <rj...@troi.lincom-asg.com> on 2000/09/30 20:45:54 UTC

Another minor build thing

I cvs downloaded tomcat4 this morning and did
a fresh build.  It went -very- cleanly (nice job!),
but I noticed that both in build/tomcat-4.0 and
dist/tomcat-4.0,  there are two copies of
xerces.jar.  One is in /lib and the other in /server.
One (I guess) comes from the
jasper build, the other from the catalina
build.  I suppose an 'excludes="xerces.jar"'
attribute in one of the <copydir> tags would take
care of it.


Bob Jamison
LinCom Corp


Re: Another minor build thing

Posted by "Craig R. McClanahan" <Cr...@eng.sun.com>.

Bob Jamison wrote:

> I cvs downloaded tomcat4 this morning and did
> a fresh build.  It went -very- cleanly (nice job!),
> but I noticed that both in build/tomcat-4.0 and
> dist/tomcat-4.0,  there are two copies of
> xerces.jar.  One is in /lib and the other in /server.
> One (I guess) comes from the
> jasper build, the other from the catalina
> build.  I suppose an 'excludes="xerces.jar"'
> attribute in one of the <copydir> tags would take
> care of it.
>

This "duplication" is actually required, due to the way class loaders are
set up in Catalina (a developer document on this will be added as well,
as soon as I get done adding some new functionality later today).

Basically, all the stuff in the "server" directory gets built in to a
classloader used to load the internal Catalina (servlet container)
classes.  Because Catalina needs an XML parser to read server.xml and
web.xml files, we put one here -- it happens to be Xerces, but could be
any JAXP-compatible parser (possibly different from the one Jasper uses).

The stuff in the "lib" directory gets built in to the classloader
hierarchy that is visible to web applications, but *not* to the internal
Catalina classes.  Jaspser also requires an XML parser (in particular, it
needs Xerces specifically at the moment because of Sax2 dependencies), so
Xerces is put here as well.  But, as mentioned previously, Jasper (and
all the other webapps) need not use the same parser that Catalina itself
uses.

>
> Bob Jamison
> LinCom Corp
>

Craig

====================
See you at ApacheCon Europe <http://www.apachecon.com>!
Session VS01 (23-Oct 13h00-17h00):  Sun Technical Briefing
Session T06  (24-Oct 14h00-15h00):  Migrating Apache JServ
                                    Applications to Tomcat