In RPCRouterServlet I checked the class of the document builder being returned
by XMLParserUtils.getXMLDocBuilder() and it's as follows:
xdb documentBuilder class type = class
org.apache.crimson.jaxp.DocumentBuilderImpl
I don't understand why the crimson version one is being used when I have xerces
as my parser. My classpath looks right.
Does anybody know why this is happening?
Scott Nichol wrote:
> The classpath being used by the class loader is different than the System
> properties classpath. Tomcat creates several class loaders, including a
> separate class loader for each servlet. The class loader for each servlet
> will include stuff in WEB-INF for that servlet. That is why dumping the
> effective classpath for the thread on which the servlet is running would be
> interesting.
>
> However, it seems like your debugging is getting close enough to the problem
> that you should probably follow that path. Whether the different JDKs are
> the cause of the problem will likely be best determined this way.
>
> Scott
>
> ----- Original Message -----
> From: "David Turner" <[EMAIL PROTECTED]>
> To: <[EMAIL PROTECTED]>
> Sent: Friday, July 27, 2001 11:30 AM
> Subject: Re: Parsing error...
>
> > Scott,
> > I dumped the System environment variables and I don't see anything
> unusual.
> >
> > Also, One thing I completely forgot to mention is that the version that I
> got
> > working (Linux and Win) I used JDK1.4.0beta. Here I'm using JDK1.3.0.
> That
> > shouldn't have anything to do with it, right?
> >
> >
> >
> > java.runtime.name=Java(TM) 2 Runtime Environment, Standard Edition,
> > sun.boot.library.path=/usr/opt/java130/jre/lib/alpha,
> > java.vm.version=1.3.0-1.p1,
> > java.vm.vendor=Compaq Computer Corp.,
> > java.vendor.url=http://www.compaq.com/java,
> > path.separator=:,
> > java.vm.name=Classic VM,
> > file.encoding.pkg=sun.io,
> > java.vm.specification.name=Java Virtual Machine Specification,
> > user.dir=/a/franklin/home/franklin/turner/tomcat4.0/bin,
> > java.runtime.version=1.3.0-1.p1,
> > java.awt.graphicsenv=sun.awt.X11GraphicsEnvironment,
> > os.arch=alpha,
> > java.io.tmpdir=/tmp/,
> > line.separator=
> > java.vm.specification.vendor=Sun Microsystems Inc.,
> > java.naming.factory.url.pkgs=org.apache.naming,
> > java.awt.fonts=,
> > os.name=OSF1,
> >
> >
> java.library.path=/usr/opt/java130/bin/../jre/lib/alpha/classic:/usr/opt/jav
> a130/bin/../jre/lib/alpha/native_threads:/usr/opt/java130/bin/../jre/lib/alp
> ha::/usr/opt/java130/bin/../jre/../lib/alpha:/util/sybase/lib:/humgen/softwa
> re/lib:/seq/software/Staden.05_97/lib/alpha-binaries:/util/lib:/util/sybase/
> lib:/util/oracle/lib:/usr/shlib:/usr/local/lib:/util/oracle/lib:/usr/lib:/us
> r/shlib,
> >
> > java.specification.name=Java Platform API Specification,
> > java.class.version=47.0,
> > os.version=V4.0,
> > user.home=/home/franklin/turner,
> > catalina.useNaming=true,
> > user.timezone=GMT-05:00,
> > java.awt.printerjob=sun.awt.motif.PSPrinterJob,
> > file.encoding=ISO8859-1,
> > java.specification.version=1.3,
> > catalina.home=./..,
> >
> >
> java.class.path=/fg/softdev/lib/xerces-1_4_1/xerces.jar:/fg/softdev/lib/jaxp
> -1.1/jaxp.jar:./../bin/bootstrap.jar:./../bin/servlet.jar:./../bin/naming.ja
> r:/usr/opt/java130/lib/tools.jar,
> >
> > user.name=turner,
> > java.naming.factory.initial=org.apache.naming.java.javaURLContextFactory,
> > java.vm.specification.version=1.0,
> > java.home=/usr/opt/java130/jre,
> > user.language=en,
> > java.specification.vendor=Sun Microsystems Inc.,
> > java.vm.info=native threads, jit,
> > java.version=1.3.0,
> > java.ext.dirs=/usr/opt/java130/jre/lib/ext,
> >
> sun.boot.class.path=/usr/opt/java130/jre/lib/rt.jar:/usr/opt/java130/jre/lib
> /i18n.jar:/usr/opt/java130/jre/lib/sunrsasign.jar:/usr/opt/java130/jre/class
> es,
> >
> > java.vendor=Compaq Computer Corp.,
> > file.separator=/,
> > java.vendor.url.bug=http://www.compaq.com/java/contact/index.html,
> > java.compiler=jit_130,
> > sun.io.unicode.encoding=UnicodeBig,
> > sun.cpu.endian=little,
> > sun.cpu.isalist=
> >
> >
> > Scott Nichol wrote:
> >
> > > > Or a simpler thing to do at any point would be something like
> > > >
> > > > ClassLoader loader =
> Thread.currentThread().getContextClassLoader();
> > > > if (loader instanceof URLClassLoader) {
> > > > URL[] urls = loader.getURLs();
> > >
> > > Make that
> > > URL[] urls = ((URLClassLoader)loader).getURLs();
> > >
> > > > for (int i = 0; i < urls.length; i++)
> > > > System.out.println(urls[i]);
> > > > }
> > > >
> > > > I'm not 100% certain this will work, but it seems worth a try just to
> see
> > > > what the classpath looks like.
> > >
> > > Scott
> >
> > --
> > David Turner <[EMAIL PROTECTED]>
> > Senior Software Engineer
> > Whitehead Institute/MIT Center for Genome Research
> > One Kendall Square, Bldg. 300
> > Cambridge, MA 02139-1561 USA
> > phone 617-252-1573 / fax 617-252-1902
> >
> >
--
David Turner <[EMAIL PROTECTED]>
Senior Software Engineer
Whitehead Institute/MIT Center for Genome Research
One Kendall Square, Bldg. 300
Cambridge, MA 02139-1561 USA
phone 617-252-1573 / fax 617-252-1902