Andrei Badea created WICKET-4965:
------------------------------------
Summary: NPE when stopping Tomcat
Key: WICKET-4965
URL: https://issues.apache.org/jira/browse/WICKET-4965
Project: Wicket
Issue Type: Bug
Components: wicket-atmosphere
Environment: Atmosphere 1.0.5, wicket-atmosphere 0.5
Reporter: Andrei Badea
Assignee: Emond Papegaaij
{noformat}
java.lang.NullPointerException: null
at org.apache.wicket.atmosphere.EventBus.get(EventBus.java:86)
at
org.apache.wicket.atmosphere.AtmosphereBehavior.findEventBus(AtmosphereBehavior.java:85)
at
org.apache.wicket.atmosphere.AtmosphereBehavior.onDisconnect(AtmosphereBehavior.java:182)
at
org.atmosphere.cpr.AtmosphereResourceImpl.onDisconnect(AtmosphereResourceImpl.java:809)
at
org.atmosphere.cpr.AtmosphereResourceImpl.notifyListeners(AtmosphereResourceImpl.java:754)
at
org.atmosphere.cpr.AtmosphereResourceImpl.resume(AtmosphereResourceImpl.java:327)
at
org.atmosphere.cpr.DefaultBroadcaster.resumeAll(DefaultBroadcaster.java:315)
at
org.atmosphere.cpr.DefaultBroadcasterFactory.destroy(DefaultBroadcasterFactory.java:307)
at
org.atmosphere.cpr.AtmosphereFramework.destroy(AtmosphereFramework.java:930)
at org.atmosphere.cpr.AtmosphereServlet.destroy(AtmosphereServlet.java:186)
at
org.apache.catalina.core.StandardWrapper.unload(StandardWrapper.java:1465)
at
org.apache.catalina.core.StandardWrapper.stopInternal(StandardWrapper.java:1823)
at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232)
at
org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5463)
at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232)
at
org.apache.catalina.core.ContainerBase$StopChild.call(ContainerBase.java:1575)
at
org.apache.catalina.core.ContainerBase$StopChild.call(ContainerBase.java:1564)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
{noformat}
The NPE occurs because the Wicket application has already been destroyed. It it
destroyed by the Wicket filter's destroy() method, which is invoked by
ReflectorServletProcessor.destroy(). AtmosphereFramework.destroy() first
destroys the handler, and then it destroys the broadcast factory (which resumes
the resources).
Jean-Francois says the bug is not in Atmosphere:
https://github.com/Atmosphere/atmosphere/issues/812
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira