geronimo.kernel.classloader.JarFileUrlStreamHandler fails with Trinidad
-----------------------------------------------------------------------

                 Key: GERONIMO-2305
                 URL: http://issues.apache.org/jira/browse/GERONIMO-2305
             Project: Geronimo
          Issue Type: Bug
      Security Level: public (Regular issues)
          Components: kernel
    Affects Versions: 1.1
         Environment: Geronimo-jetty-1.1 running in Java 1.5.0_06 on Mac OS X 
or Java 1.5.0_06 on XP
Aug. 6 Trinidad snapshot - 
http://people.apache.org/maven-snapshot-repository/org/apache/myfaces/trinidad/
            Reporter: Chris Herborth
            Priority: Blocker


Web application (built with current MyFaces and Trinidad) crashes during page 
loading with this stack trace:

7-Aug-2006 10:40:40 AM 
org.apache.myfaces.adfinternal.agent.CapabilitiesProvider getCapabilities
SEVERE: could not get capabilities from capabilities document
java.lang.IllegalArgumentException: Expected url [jar:file:/C:/Documents and 
Settings/chrish/Desktop/geronimo-1.1/repository/default/devsignup/1154961598406/devsignup-1154961598406.war/WEB-INF/lib/adf-faces-impl-incubator-m1-SNAPSHOT.jar!/META-INF/agent/capabilities.xml],
 but was [jar:file:/C:/Documents and 
Settings/chrish/Desktop/geronimo-1.1/repository/default/devsignup/1154961598406/devsignup-1154961598406.war/WEB-INF/lib/adf-faces-impl-incubator-m1-SNAPSHOT.jar!/META-INF/agent/htmlBasic.xml]
        at 
org.apache.geronimo.kernel.classloader.JarFileUrlStreamHandler.openConnection(JarFileUrlStreamHandler.java:63)
        at java.net.URL.openConnection(Unknown Source)
        at 
org.apache.myfaces.adfinternal.agent.parse.CapabilityDataDocumentParser.parse(CapabilityDataDocumentParser.java:60)
        at 
org.apache.myfaces.adfinternal.agent.parse.CapabilitiesDocument._getCapabilities(CapabilitiesDocument.java:315)
        at 
org.apache.myfaces.adfinternal.agent.parse.CapabilitiesDocument._getCapabilities(CapabilitiesDocument.java:226)
        at 
org.apache.myfaces.adfinternal.agent.parse.CapabilitiesDocument._getCapabilities(CapabilitiesDocument.java:293)
        at 
org.apache.myfaces.adfinternal.agent.parse.CapabilitiesDocument._getCapabilities(CapabilitiesDocument.java:212)
        at 
org.apache.myfaces.adfinternal.agent.parse.CapabilitiesDocument._getDefaultAgentCapabilities(CapabilitiesDocument.java:117)
        at 
org.apache.myfaces.adfinternal.agent.parse.CapabilitiesDocument.<init>(CapabilitiesDocument.java:38)
        at 
org.apache.myfaces.adfinternal.agent.parse.CapabilitiesDocumentParser.endElement(CapabilitiesDocumentParser.java:184)
        at 
org.apache.myfaces.adfinternal.share.xml.TreeBuilder$Handler.endElement(TreeBuilder.java:463)
        at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown 
Source)
        at 
org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement(Unknown Source)
        at 
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown
 Source)
        at 
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown 
Source)
        at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
        at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
        at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
        at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
        at 
org.apache.myfaces.adfinternal.share.xml.TreeBuilder.parse(TreeBuilder.java:166)
        at 
org.apache.myfaces.adfinternal.agent.parse.CapabilitiesDocumentParser.createInstance(CapabilitiesDocumentParser.java:67)
        at 
org.apache.myfaces.adfinternal.agent.CapabilitiesProvider._getCapabilityDocument(CapabilitiesProvider.java:128)
        at 
org.apache.myfaces.adfinternal.agent.CapabilitiesProvider._getCapabilities(CapabilitiesProvider.java:110)
        at 
org.apache.myfaces.adfinternal.agent.CapabilitiesProvider.getCapabilities(CapabilitiesProvider.java:91)
        at 
org.apache.myfaces.adfinternal.agent.AdfFacesAgentImpl._getCapabilityMap(AdfFacesAgentImpl.java:263)
        at 
org.apache.myfaces.adfinternal.agent.AdfFacesAgentImpl._initialize(AdfFacesAgentImpl.java:233)
        at 
org.apache.myfaces.adfinternal.agent.AdfFacesAgentImpl.<init>(AdfFacesAgentImpl.java:40)
        at 
org.apache.myfaces.adfinternal.context.AdfFacesContextImpl.getAgent(AdfFacesContextImpl.java:533)
        at 
org.apache.myfaces.adfinternal.renderkit.core.CoreRenderKit.chooseRenderKit(CoreRenderKit.java:144)
        at 
org.apache.myfaces.adfinternal.renderkit.CoreRenderKitFactory.getRenderKit(CoreRenderKitFactory.java:50)
        at 
org.apache.myfaces.context.servlet.ServletFacesContextImpl.getRenderKit(ServletFacesContextImpl.java:184)
        at 
org.apache.myfaces.adfinternal.context.FacesContextFactoryImpl$CacheRenderKit.getRenderKit(FacesContextFactoryImpl.java:103)
        at 
org.apache.myfaces.adfinternal.application.ViewHandlerImpl._getExtendedRenderKitService(ViewHandlerImpl.java:330)
        at 
org.apache.myfaces.adfinternal.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:154)
        at 
org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:384)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:138)
        at 
org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:428)
        at 
org.apache.geronimo.jetty.JettyServletHolder.handle(JettyServletHolder.java:97)
        at 
org.mortbay.jetty.servlet.WebApplicationHandler$CachedChain.doFilter(WebApplicationHandler.java:830)
        at 
org.apache.myfaces.adfinternal.webapp.AdfFacesFilterImpl._invokeDoFilter(AdfFacesFilterImpl.java:320)
        at 
org.apache.myfaces.adfinternal.webapp.AdfFacesFilterImpl._doFilterImpl(AdfFacesFilterImpl.java:289)
        at 
org.apache.myfaces.adfinternal.webapp.AdfFacesFilterImpl.doFilter(AdfFacesFilterImpl.java:213)
        at 
org.apache.myfaces.adf.webapp.AdfFacesFilter.doFilter(AdfFacesFilter.java:90)
        at 
org.mortbay.jetty.servlet.WebApplicationHandler$CachedChain.doFilter(WebApplicationHandler.java:821)
        at 
org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:144)
        at 
org.mortbay.jetty.servlet.WebApplicationHandler$CachedChain.doFilter(WebApplicationHandler.java:821)
        at 
org.mortbay.jetty.servlet.JSR154Filter.doFilter(JSR154Filter.java:170)
        at 
org.mortbay.jetty.servlet.WebApplicationHandler$CachedChain.doFilter(WebApplicationHandler.java:821)
        at 
org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler.java:471)
        at 
org.apache.geronimo.jetty.JettyWebApplicationHandler.dispatch(JettyWebApplicationHandler.java:58)
        at 
org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:568)
        at org.mortbay.http.HttpContext.handle(HttpContext.java:1530)
        at 
org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext.java:633)
        at org.mortbay.http.HttpContext.handle(HttpContext.java:1482)
        at org.mortbay.http.HttpServer.service(HttpServer.java:909)
        at org.mortbay.http.HttpConnection.service(HttpConnection.java:816)
        at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:982)
        at org.mortbay.http.HttpConnection.handle(HttpConnection.java:833)
        at 
org.mortbay.http.SocketListener.handleConnection(SocketListener.java:244)
        at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:357)
        at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:534)

Trinidad developers say:

{quote}
Looking at the source code for JarFileUrlStreamHandler over
in the geronimo codebase, it looks as though they've got a pretty
bad bug:  their handler is not reentrant (you can't parse one file out
of a JAR while in the middle of parsing another).  This is 100% legit
code on our part (and it'd be a major pain to overhaul our code
not to do it).  I think you'll need to file a bug against Jetty or Geronimo.
{quote}

Will include sample WAR (which installs at /devSignup on the server) if I can 
figure out how to do that.


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

        

Reply via email to