[jboss-jira] [JBoss JIRA] Updated: (JBAS-1283) Tomcat Unable to Compile JSPs when Separate ClassLoader Namespace Used for Webapp

Dimitris Andreadis (JIRA) jira-events at jboss.com
Tue Jul 25 04:15:12 EDT 2006


     [ http://jira.jboss.com/jira/browse/JBAS-1283?page=all ]

Dimitris Andreadis updated JBAS-1283:
-------------------------------------

    Fix Version/s: JBossAS-4.0.6.CR1
                       (was: JBossAS-4.0.5.CR1)

> Tomcat Unable to Compile JSPs when Separate ClassLoader Namespace Used for Webapp
> ---------------------------------------------------------------------------------
>
>                 Key: JBAS-1283
>                 URL: http://jira.jboss.com/jira/browse/JBAS-1283
>             Project: JBoss Application Server
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>          Components: Web (Tomcat) service
>    Affects Versions: JBossAS-3.2.6 Final
>         Environment: Stock JBoss 3.2.6 running on Linux (kernel 2.4.26), Sun JDK and JRE version 1.4.2_04
>            Reporter: Jeremy Brown
>         Assigned To: Scott M Stark
>            Priority: Minor
>             Fix For: JBossAS-4.0.6.CR1
>
>         Attachments: test.war
>
>
> See my initial forum post at "http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3861452#3861452".
> The dom4j libs provided by JBoss do not work correctly with my web application, so I attempted to configure my webapp's "jboss-web.xml"--as per the wiki page at "http://www.jboss.org/wiki/Wiki.jsp?page=ClassLoadingConfiguration"--so that my webapp would essentially be in a different classloader namspace and would be able to override the server dom4j implementation with its own.  Now, Tomcat bails out during JSP compilation with a dom4j-related ClassCastException, leading me to believe there might some problem with the sort of setup I'm trying to attempt...for example, Tomcat's JSP compiler might be trying to link with the dom4j in my application's namespace while its classes have been loaded next to (and probably are already using) dom4j in the server namespace.
> I'll attach a .war file exhibiting this behavior to this bug report.
> Here's the specific exception for this .war file:
> java.lang.ClassCastException
>         at javax.xml.parsers.DocumentBuilderFactory.newInstance(DocumentBuilderFactory.java:93)
>         at org.apache.jasper.xmlparser.ParserUtils.parseXMLDocument(ParserUtils.java:91)
>         at org.apache.jasper.compiler.JspConfig.processWebDotXml(JspConfig.java:70)
>         at org.apache.jasper.compiler.JspConfig.init(JspConfig.java:188)
>         at org.apache.jasper.compiler.JspConfig.findJspProperty(JspConfig.java:240)
>         at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:160)
>         at org.apache.jasper.compiler.Compiler.compile(Compiler.java:470)
>         at org.apache.jasper.compiler.Compiler.compile(Compiler.java:451)
>         at org.apache.jasper.compiler.Compiler.compile(Compiler.java:439)
>         at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:511)
>         at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:295)
>         at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
>         at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
>         at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:75)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
>         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
>         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
>         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
>         at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
>         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
>         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
>         at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:66)
>         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
>         at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:158)
>         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
>         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
>         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
>         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
>         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
>         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
>         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
>         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
>         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
>         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)        at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
>         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
>         at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
>         at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
>         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
>         at java.lang.Thread.run(Thread.java:534)
> Interestingly enough, I can copy my app-specific "dom4j-full.jar" over the JBoss-provided "dom4j.jar" in "/lib", and everything works great.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the jboss-jira mailing list