org.apache.wicket.protocol.http.request.InvalidUrlException: org.apache.wicket.WicketRuntimeException: After 1 minute the Pagemap null is still locked by: Thread[http-8443-21,5,main], giving up trying to get the page for path: 7:stage-component:content:form:step:panel:questions:3:question:media:media:audio-source-container:0:audio-source

JIRA | Philippe Laflamme | 5 years ago
tip
Your exception is missing from the Samebug knowledge base.
Here are the best solutions we found on the Internet.
Click on the to mark the helpful solution and get rewards for you help.
  1. 0

    When a questionnaire contains multiple audio streams on the same page, there seems to be an issue where the wicket PageMap is locked by a thread and prevents other threads from responding to their requests. I wonder if this is caused by the fact that the browser loads only a partial portion of the audio stream and then cancels the request. The stacktrace seems to show that the thread is sending a byte stream to the client. So maybe the client requests all 3 streams, cancels one of them which Tomcat doesn't seem to notice. The server-side thread is blocked on sending the audio stream to the client which blocks the other threads from obtaining the PageMap lock. {code} 2011-12-13 12:36:23,081 - INFO - yx.webapp.OnyxRequestCycle - Request cycle runtime exception org.apache.wicket.protocol.http.request.InvalidUrlException: org.apache.wicket.WicketRuntimeException: After 1 minute the Pagemap null is still locked by: Thread[http-8443-21,5,main], giving up trying to get the page for path: 7:stage-component:content:form:step:panel:questions:3:question:media:media:audio-source-container:0:audio-source at org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(WebRequestCycleProcessor.java:262) at org.apache.wicket.RequestCycle.step(RequestCycle.java:1310) at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1436) at org.apache.wicket.RequestCycle.request(RequestCycle.java:545) at org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:486) at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:319) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) at java.lang.Thread.run(Thread.java:679) Caused by: org.apache.wicket.WicketRuntimeException: After 1 minute the Pagemap null is still locked by: Thread[http-8443-21,5,main], giving up trying to get the page for path: 7:stage-component:content:form:step:panel:questions:3:question:media:media:audio-source-container:0:audio-source at java.net.SocketOutputStream.socketWrite0(Native Method) at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:109) at java.net.SocketOutputStream.write(SocketOutputStream.java:153) at sun.security.ssl.OutputRecord.writeBuffer(OutputRecord.java:314) at sun.security.ssl.OutputRecord.write(OutputRecord.java:303) at sun.security.ssl.SSLSocketImpl.writeRecordInternal(SSLSocketImpl.java:768) at sun.security.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:756) at sun.security.ssl.AppOutputStream.write(AppOutputStream.java:107) at org.apache.coyote.http11.InternalOutputBuffer.realWriteBytes(InternalOutputBuffer.java:760) at org.apache.tomcat.util.buf.ByteChunk.flushBuffer(ByteChunk.java:432) at org.apache.tomcat.util.buf.ByteChunk.append(ByteChunk.java:347) at org.apache.coyote.http11.InternalOutputBuffer$OutputStreamOutputBuffer.doWrite(InternalOutputBuffer.java:784) at org.apache.coyote.http11.filters.IdentityOutputFilter.doWrite(IdentityOutputFilter.java:118) at org.apache.coyote.http11.InternalOutputBuffer.doWrite(InternalOutputBuffer.java:593) at org.apache.coyote.Response.doWrite(Response.java:560) at org.apache.catalina.connector.OutputBuffer.realWriteBytes(OutputBuffer.java:353) at org.apache.tomcat.util.buf.ByteChunk.flushBuffer(ByteChunk.java:432) at org.apache.tomcat.util.buf.ByteChunk.append(ByteChunk.java:347) at org.apache.catalina.connector.OutputBuffer.writeBytes(OutputBuffer.java:381) at org.apache.catalina.connector.OutputBuffer.write(OutputBuffer.java:370) at org.apache.catalina.connector.CoyoteOutputStream.write(CoyoteOutputStream.java:89) at org.apache.wicket.util.io.Streams.copy(Streams.java:159) at org.apache.wicket.util.io.Streams.copy(Streams.java:126) at org.apache.wicket.Response.write(Response.java:306) at org.apache.wicket.request.target.resource.ResourceStreamRequestTarget.respond(ResourceStreamRequestTarget.java:160) at org.apache.wicket.request.AbstractRequestCycleProcessor.respond(AbstractRequestCycleProcessor.java:105) at org.apache.wicket.RequestCycle.respond(RequestCycle.java:1267) at org.apache.wicket.RequestCycle.step(RequestCycle.java:1334) ... 20 more {code}

    JIRA | 5 years ago | Philippe Laflamme
    org.apache.wicket.protocol.http.request.InvalidUrlException: org.apache.wicket.WicketRuntimeException: After 1 minute the Pagemap null is still locked by: Thread[http-8443-21,5,main], giving up trying to get the page for path: 7:stage-component:content:form:step:panel:questions:3:question:media:media:audio-source-container:0:audio-source
  2. 0

    When a questionnaire contains multiple audio streams on the same page, there seems to be an issue where the wicket PageMap is locked by a thread and prevents other threads from responding to their requests. I wonder if this is caused by the fact that the browser loads only a partial portion of the audio stream and then cancels the request. The stacktrace seems to show that the thread is sending a byte stream to the client. So maybe the client requests all 3 streams, cancels one of them which Tomcat doesn't seem to notice. The server-side thread is blocked on sending the audio stream to the client which blocks the other threads from obtaining the PageMap lock. {code} 2011-12-13 12:36:23,081 - INFO - yx.webapp.OnyxRequestCycle - Request cycle runtime exception org.apache.wicket.protocol.http.request.InvalidUrlException: org.apache.wicket.WicketRuntimeException: After 1 minute the Pagemap null is still locked by: Thread[http-8443-21,5,main], giving up trying to get the page for path: 7:stage-component:content:form:step:panel:questions:3:question:media:media:audio-source-container:0:audio-source at org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(WebRequestCycleProcessor.java:262) at org.apache.wicket.RequestCycle.step(RequestCycle.java:1310) at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1436) at org.apache.wicket.RequestCycle.request(RequestCycle.java:545) at org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:486) at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:319) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) at java.lang.Thread.run(Thread.java:679) Caused by: org.apache.wicket.WicketRuntimeException: After 1 minute the Pagemap null is still locked by: Thread[http-8443-21,5,main], giving up trying to get the page for path: 7:stage-component:content:form:step:panel:questions:3:question:media:media:audio-source-container:0:audio-source at java.net.SocketOutputStream.socketWrite0(Native Method) at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:109) at java.net.SocketOutputStream.write(SocketOutputStream.java:153) at sun.security.ssl.OutputRecord.writeBuffer(OutputRecord.java:314) at sun.security.ssl.OutputRecord.write(OutputRecord.java:303) at sun.security.ssl.SSLSocketImpl.writeRecordInternal(SSLSocketImpl.java:768) at sun.security.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:756) at sun.security.ssl.AppOutputStream.write(AppOutputStream.java:107) at org.apache.coyote.http11.InternalOutputBuffer.realWriteBytes(InternalOutputBuffer.java:760) at org.apache.tomcat.util.buf.ByteChunk.flushBuffer(ByteChunk.java:432) at org.apache.tomcat.util.buf.ByteChunk.append(ByteChunk.java:347) at org.apache.coyote.http11.InternalOutputBuffer$OutputStreamOutputBuffer.doWrite(InternalOutputBuffer.java:784) at org.apache.coyote.http11.filters.IdentityOutputFilter.doWrite(IdentityOutputFilter.java:118) at org.apache.coyote.http11.InternalOutputBuffer.doWrite(InternalOutputBuffer.java:593) at org.apache.coyote.Response.doWrite(Response.java:560) at org.apache.catalina.connector.OutputBuffer.realWriteBytes(OutputBuffer.java:353) at org.apache.tomcat.util.buf.ByteChunk.flushBuffer(ByteChunk.java:432) at org.apache.tomcat.util.buf.ByteChunk.append(ByteChunk.java:347) at org.apache.catalina.connector.OutputBuffer.writeBytes(OutputBuffer.java:381) at org.apache.catalina.connector.OutputBuffer.write(OutputBuffer.java:370) at org.apache.catalina.connector.CoyoteOutputStream.write(CoyoteOutputStream.java:89) at org.apache.wicket.util.io.Streams.copy(Streams.java:159) at org.apache.wicket.util.io.Streams.copy(Streams.java:126) at org.apache.wicket.Response.write(Response.java:306) at org.apache.wicket.request.target.resource.ResourceStreamRequestTarget.respond(ResourceStreamRequestTarget.java:160) at org.apache.wicket.request.AbstractRequestCycleProcessor.respond(AbstractRequestCycleProcessor.java:105) at org.apache.wicket.RequestCycle.respond(RequestCycle.java:1267) at org.apache.wicket.RequestCycle.step(RequestCycle.java:1334) ... 20 more {code}

    JIRA | 5 years ago | Philippe Laflamme
    org.apache.wicket.protocol.http.request.InvalidUrlException: org.apache.wicket.WicketRuntimeException: After 1 minute the Pagemap null is still locked by: Thread[http-8443-21,5,main], giving up trying to get the page for path: 7:stage-component:content:form:step:panel:questions:3:question:media:media:audio-source-container:0:audio-source

    Root Cause Analysis

    1. org.apache.wicket.WicketRuntimeException

      After 1 minute the Pagemap null is still locked by: Thread[http-8443-21,5,main], giving up trying to get the page for path: 7:stage-component:content:form:step:panel:questions:3:question:media:media:audio-source-container:0:audio-source

      at java.net.SocketOutputStream.socketWrite0()
    2. Java RT
      SocketOutputStream.write
      1. java.net.SocketOutputStream.socketWrite0(Native Method)
      2. java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:109)
      3. java.net.SocketOutputStream.write(SocketOutputStream.java:153)
      3 frames
    3. Java JSSE
      AppOutputStream.write
      1. sun.security.ssl.OutputRecord.writeBuffer(OutputRecord.java:314)
      2. sun.security.ssl.OutputRecord.write(OutputRecord.java:303)
      3. sun.security.ssl.SSLSocketImpl.writeRecordInternal(SSLSocketImpl.java:768)
      4. sun.security.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:756)
      5. sun.security.ssl.AppOutputStream.write(AppOutputStream.java:107)
      5 frames
    4. Grizzly HTTP
      InternalOutputBuffer.realWriteBytes
      1. org.apache.coyote.http11.InternalOutputBuffer.realWriteBytes(InternalOutputBuffer.java:760)
      1 frame
    5. Tomcat Util
      ByteChunk.append
      1. org.apache.tomcat.util.buf.ByteChunk.flushBuffer(ByteChunk.java:432)
      2. org.apache.tomcat.util.buf.ByteChunk.append(ByteChunk.java:347)
      2 frames
    6. Grizzly HTTP
      Response.doWrite
      1. org.apache.coyote.http11.InternalOutputBuffer$OutputStreamOutputBuffer.doWrite(InternalOutputBuffer.java:784)
      2. org.apache.coyote.http11.filters.IdentityOutputFilter.doWrite(IdentityOutputFilter.java:118)
      3. org.apache.coyote.http11.InternalOutputBuffer.doWrite(InternalOutputBuffer.java:593)
      4. org.apache.coyote.Response.doWrite(Response.java:560)
      4 frames
    7. Glassfish Core
      OutputBuffer.realWriteBytes
      1. org.apache.catalina.connector.OutputBuffer.realWriteBytes(OutputBuffer.java:353)
      1 frame
    8. Tomcat Util
      ByteChunk.append
      1. org.apache.tomcat.util.buf.ByteChunk.flushBuffer(ByteChunk.java:432)
      2. org.apache.tomcat.util.buf.ByteChunk.append(ByteChunk.java:347)
      2 frames
    9. Glassfish Core
      CoyoteOutputStream.write
      1. org.apache.catalina.connector.OutputBuffer.writeBytes(OutputBuffer.java:381)
      2. org.apache.catalina.connector.OutputBuffer.write(OutputBuffer.java:370)
      3. org.apache.catalina.connector.CoyoteOutputStream.write(CoyoteOutputStream.java:89)
      3 frames
    10. Wicket Util
      Streams.copy
      1. org.apache.wicket.util.io.Streams.copy(Streams.java:159)
      2. org.apache.wicket.util.io.Streams.copy(Streams.java:126)
      2 frames
    11. Wicket Core
      Response.write
      1. org.apache.wicket.Response.write(Response.java:306)
      1 frame
    12. org.apache.wicket
      ResourceStreamRequestTarget.respond
      1. org.apache.wicket.request.target.resource.ResourceStreamRequestTarget.respond(ResourceStreamRequestTarget.java:160)
      1 frame
    13. Wicket Request
      AbstractRequestCycleProcessor.respond
      1. org.apache.wicket.request.AbstractRequestCycleProcessor.respond(AbstractRequestCycleProcessor.java:105)
      1 frame
    14. Wicket Core
      WicketFilter.doFilter
      1. org.apache.wicket.RequestCycle.respond(RequestCycle.java:1267)
      2. org.apache.wicket.RequestCycle.step(RequestCycle.java:1334)
      3. org.apache.wicket.RequestCycle.steps(RequestCycle.java:1436)
      4. org.apache.wicket.RequestCycle.request(RequestCycle.java:545)
      5. org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:486)
      6. org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:319)
      6 frames
    15. Glassfish Core
      ApplicationFilterChain.doFilter
      1. org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      2. org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      2 frames
    16. Hibernate
      OpenSessionInViewFilter.doFilterInternal
      1. org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
      1 frame
    17. Spring
      OncePerRequestFilter.doFilter
      1. org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
      1 frame
    18. Glassfish Core
      CoyoteAdapter.service
      1. org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      2. org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      3. org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
      4. org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
      5. org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
      6. org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
      7. org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
      8. org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
      8 frames
    19. Grizzly HTTP
      JIoEndpoint$Worker.run
      1. org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
      2. org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
      3. org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
      3 frames
    20. Java RT
      Thread.run
      1. java.lang.Thread.run(Thread.java:679)
      1 frame