Chris,
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.
-- Adam
On 8/7/06, Chris Herborth <[EMAIL PROTECTED]> wrote:
Adam Winer wrote:
> Can you give us a longer stack trace?
Sure thing (is there any way to tell how much is "enough", or should I
just post the whole thing when I have a problem?):
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)
--
Chris Herborth ([EMAIL PROTECTED]) http://www.pobox.com/~chrish/
Never send a monster to do the work of an evil scientist.