cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stuart Roebuck ...@adolos.com>
Subject RE: [C2] working configuration > Catalina M3
Date Mon, 06 Nov 2000 09:43:53 GMT
I take it this problem is the problem referred to in this correspondence on tomcat-dev:

> Willie Wheeler wrote: 
>  
> > Hi all, 
> > 
> >         I get package sealing violations when I run my web app on Tomcat 4.0 m3
and 
> > m4.  I never got these with previous releases, and it looks to me as if the 
> > cause is the addition of the sealed crimson.jar JAR file to the library. 
> > Problem is that my app uses JDOM b4, which is using Xerces 1.1.2, and Xerces 
> > contains a bunch of JAXP/DOM/SAX classes that also appear in crimson.jar 
> > (hence the sealing violation). 
> >         Does anybody have any advice on how best to handle this situation?  I guess

> > that one way is to remove the duplicate classes from either crimson.jar or 
> > xerces_1_1_2.jar, but that seems less than ideal, and could easily lead to 
> > breakage.  Maybe some solution involving loading the JARs with different 
> > class loaders? 
> > 
> >         Thanks, 
> >         Willie 
>  
> Welcome to the wonderful world of classloaders :-). 
>  
> You're correct -- trying to remove classes from one or the other of the JAR files is

> not going to work at all.  Each library will be depending on its own internal 
> implementation of those classes. 
>  
> The crimson.jar file is placed in $CATALINA_HOME/lib (and therefore visible to web 
> apps) because Jasper needs a JAXP-1.1 compatible parser.  It would be technically 
> feasible for Jasper to load its own XML parser in a private classloader, but this is

> not a trivial amount of work.  Once Xerces is upgraded to JAXP-1.1 compatibility you

> will simply be able to use Xerces instead (and thus not have these conflicts). 
>  
> If your app does not need JSP, you could simply remove crimson.jar from 
> $CATALINA_HOME/lib (you will want to comment out the JSP servlet in 
> $CATALINA_HOME/conf/web.xml as well).  If you do, I'm afraid there isn't much that can

> be done in the short run until all the parsers catch back up with JAXP compatibility

> again. 
>  
> Craig McClanahan 

If this is so, then Tomcat 4 and Cocoon are *currently* incompatible by design.  Could someone
confirm this?

Stuart.



On Monday, November 6, 2000, at 05:09 AM, Andre Schmidt wrote:

> Now it's working again with Catalina M3 (besides of the status page giving 
> no headers), but not with Catalina M4. I add the exception report. 
>  
> -André 
>  
>  
> A Servlet Exception Has Occurred 
> Exception Report: 
> javax.servlet.ServletException: Error instantiating servlet class 
> org.apache.cocoon.servlet.CocoonServlet 
> 	at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:747) 
> 	at 
> org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:544) 
> 	at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja 
> va:229) 
> 	at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:977) 
> 	at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja 
> va:165) 
> 	at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:977) 
> 	at 
> org.apache.catalina.core.StandardContext.invoke(StandardContext.java:1876) 
> 	at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:161 
> ) 
> 	at org.apache.catalina.valves.ValveBase.invokeNext(ValveBase.java:242) 
> 	at 
> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:343) 
> 	at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:975) 
> 	at 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java 
> :159) 
> 	at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:977) 
> 	at 
> org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java: 
> 785) 
> 	at 
> org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:902) 
> 	at java.lang.Thread.run(Thread.java:484) 
>  
> Root Cause: 
> java.lang.SecurityException: sealing violation 
> 	at java.net.URLClassLoader.defineClass(URLClassLoader.java:234) 
> 	at java.net.URLClassLoader.access$100(URLClassLoader.java:56) 
> 	at java.net.URLClassLoader$1.run(URLClassLoader.java:195) 
> 	at java.security.AccessController.doPrivileged(Native Method) 
> 	at java.net.URLClassLoader.findClass(URLClassLoader.java:188) 
> 	at 
> org.apache.catalina.loader.StandardClassLoader.findClass(StandardClassLoader 
> .java:648) 
> 	at 
> org.apache.catalina.loader.StandardClassLoader.loadClass(StandardClassLoader 
> .java:987) 
> 	at 
> org.apache.catalina.loader.StandardClassLoader.loadClass(StandardClassLoader 
> .java:906) 
> 	at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:313) 
> 	at java.lang.ClassLoader.defineClass0(Native Method) 
> 	at java.lang.ClassLoader.defineClass(ClassLoader.java:486) 
> 	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:111) 
> 	at java.net.URLClassLoader.defineClass(URLClassLoader.java:248) 
> 	at java.net.URLClassLoader.access$100(URLClassLoader.java:56) 
> 	at java.net.URLClassLoader$1.run(URLClassLoader.java:195) 
> 	at java.security.AccessController.doPrivileged(Native Method) 
> 	at java.net.URLClassLoader.findClass(URLClassLoader.java:188) 
> 	at 
> org.apache.catalina.loader.StandardClassLoader.findClass(StandardClassLoader 
> .java:648) 
> 	at 
> org.apache.catalina.loader.StandardClassLoader.loadClass(StandardClassLoader 
> .java:987) 
> 	at 
> org.apache.catalina.loader.StandardClassLoader.loadClass(StandardClassLoader 
> .java:906) 
> 	at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:313) 
> 	at java.lang.Class.newInstance0(Native Method) 
> 	at java.lang.Class.newInstance(Class.java:237) 
> 	at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:740) 
> 	at 
> org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:544) 
> 	at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja 
> va:229) 
> 	at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:977) 
> 	at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja 
> va:165) 
> 	at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:977) 
> 	at 
> org.apache.catalina.core.StandardContext.invoke(StandardContext.java:1876) 
> 	at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:161 
> ) 
> 	at org.apache.catalina.valves.ValveBase.invokeNext(ValveBase.java:242) 
> 	at 
> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:343) 
> 	at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:975) 
> 	at 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java 
> :159) 
> 	at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:977) 
> 	at 
> org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java: 
> 785) 
> 	at 
> org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:902) 
> 	at java.lang.Thread.run(Thread.java:484) 
>  
>  
> > -----Original Message----- 
> > From: giacomo@vignette.com [mailto:giacomo@vignette.com]On Behalf Of 
> > Giacomo Pati 
> > Sent: Sonntag, 5. November 2000 04:42 
> > To: cocoon-dev@xml.apache.org 
> > Subject: Re: [C2] working configuration 
> > 
> > 
> > Andre Schmidt wrote: 
> > > 
> > > After some busy times I wanted to update my C2 installation to 
> > play around 
> > > with esql. I have a working configuration (Win2kSP1, MM-MySQL, JDK 
> > > 1.2.2-006, Catalina-M1 and C2 as of 6th of Nov.) and tried to 
> > set up a new 
> > > one based on Catalina-M4 with C2 from cvs as of last night. But this one 
> > > (tried even with JDK 1.3) is bombing with 
> > 
> > I've missed to commit an additional change. So there was a error the cvs 
> > of last night which I've corrected this morning. Please update your 
> > repository and try again. 
> > 
> > Giacomo 
> > 
> > > 
> > > javax.servlet.ServletException: Error instantiating servlet class 
> > > org.apache.cocoon.servlet.CocoonServlet 
> > > 
> > > So I would like to check back with you about working 
> > configurations. Or is 
> > > this just because of Catalina being servlet 2.3 now? 
> > > 
> > > -André 
>  
>  

-------------------------------------------------------------------------
Stuart Roebuck, BSc, MBA        Tel.: 0131 228 4853 / Fax.: 0870 054 8322
Managing Director                       Alpha Numeric Pager: 07654 588898
ADOLOS                                             http://www.adolos.com/
Mime
View raw message