Or maybehe is using the old Xerces (1.4.4) with the new Xerces(2.x). They have make huge changes between the 2 versions and backward compatibility is no longer supported (Xerces 1.4.4 doesn't fully supports JAXP, Xerces 2.x does). They probably use a public API, but not the JAXP one. You will have to stick with that version or ask other app to update to Xerces 2.x :-(
Also, the classloader will not properly load the second jar since it doesn't load a class that is in memory. Since your 2 xerces share some base classes, that's probably why it doesn't work.

-- Jeanfrancois

Jacob Kjome wrote:


hmm....

Seems to me that they might have been accessing the Xerces implementation classes rather than just the public interfaces. If they were doign things like loading classes dynamically such as using Class.forName("com.mypackage.MyClass") you would get exactly this problem because that will only look for the class in the current classloader instead of looking at all available classloaders. If you can post a stacktrace, we might be able to make that determination. Without a full stack trace, no one will be able to help you much further. Also, in what environment was all this working before? A previous versions of Tomcat? If so, which version? And why not stick with that version....or make the developers fix the bad coding?

Jake

At 04:25 PM 2/3/2003 +0100, you wrote:

I already tried to remove those libs from WEB-INF/lib to CATALINA_HOME/common/lib or CATALINA_HOME/lib, but all the classes in WEB-INF/classes that were coded by another developpers didn't worked any more !

>
> Put it in CATALINA_HOME/common/endorsed or common/lib. You aren't supposed
> to put endorsed packages such as javax.* and org.w3c.* in WEB-INF/lib. It
> causes all sorts of problems and violates the Sun classloading spec which
> Tomcat, as of 4.0.2, enforces.
>
> Jake
>
> At 10:11 AM 2/3/2003 +0100, you wrote:
> >Hi,
> >
> >I'm working with TC 4.0.3. In the WEB-INF/lib directory, I've got 2
> >libraries : xerces.jar (I think it's an old Xerces, I didn't put myself
> >there : someone else need it) and xercesImpl.jar (a newer version of xerces).
> >I coded a class that need xerces2, but when I launch it (via a servlet) in
> >my Tomcat, it throws a NoSuchMethoError cause it doesn't take the good jar !
> >How can I "force" TC to take the new librairy ?
> >
> >Thanx in advance
> >
> >---------------------------------------------------------------------
> >To unsubscribe, e-mail: [EMAIL PROTECTED]
> >For additional commands, e-mail: [EMAIL PROTECTED]
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to