[jbossseam-issues] [JBoss JIRA] Reopened: (JBSEAM-1681) NPE thrown when tomcat shutsdown

Michael Youngstrom (JIRA) jira-events at lists.jboss.org
Tue Jul 17 15:39:47 EDT 2007


     [ http://jira.jboss.com/jira/browse/JBSEAM-1681?page=all ]

Michael Youngstrom reopened JBSEAM-1681:
----------------------------------------

             
However, with tomcat 6 I get a similar exception when starting up the server.  Looking at JavaBeanInterceptor.readResolve(JavaBeanInterceptor.java:160) it looks like that JavaBeanInterceptor is expecting an IllegalStateException to be thrown which will happen if Lifecycle used getApplication() instead of the static variable.  So perhaps the fix for this issue is to use Lifecycle.getApplication() wherever Lifecycle.application is used in Lifecycle so this exception will go away and tomcat 55 will get IllegalStateExceptions instead of NPEs when shutting down.

Unless I hear otherwise I'll go ahead and make the change.

java.lang.NullPointerException
	at org.jboss.seam.contexts.BasicContext.get(BasicContext.java:48)
	at org.jboss.seam.Component.forName(Component.java:1710)
	at org.jboss.seam.Seam.componentForName(Seam.java:288)
	at org.jboss.seam.intercept.RootInterceptor.getComponent(RootInterceptor.java:222)
	at org.jboss.seam.intercept.JavaBeanInterceptor.readResolve(JavaBeanInterceptor.java:160)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:615)
	at java.io.ObjectStreamClass.invokeReadResolve(ObjectStreamClass.java:1088)
	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1747)
	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1324)
	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:362)
	at org.apache.catalina.session.StandardSession.readObject(StandardSession.java:1439)
	at org.apache.catalina.session.StandardSession.readObjectData(StandardSession.java:942)
	at org.apache.catalina.session.StandardManager.doLoad(StandardManager.java:394)
	at org.apache.catalina.session.StandardManager.load(StandardManager.java:321)
	at org.apache.catalina.session.StandardManager.start(StandardManager.java:637)
	at org.apache.catalina.core.ContainerBase.setManager(ContainerBase.java:438)
	at org.apache.catalina.core.StandardContext.start(StandardContext.java:4255)
	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
	at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:825)
	at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:714)
	at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:490)
	at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138)
	at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
	at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
	at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
	at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
	at org.apache.catalina.core.StandardService.start(StandardService.java:516)
	at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
	at org.apache.catalina.startup.Catalina.start(Catalina.java:566)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:615)
	at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)

> NPE thrown when tomcat shutsdown
> --------------------------------
>
>                 Key: JBSEAM-1681
>                 URL: http://jira.jboss.com/jira/browse/JBSEAM-1681
>             Project: JBoss Seam
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 2.0.0.CR1
>            Reporter: Michael Youngstrom
>         Assigned To: Michael Youngstrom
>             Fix For: 2.0.0.CR1
>
>
> I'm running Seam in tomcat 5.5.23.  When I shutdown I get an NPE.  It appears that contextDestroyed is being called before tomcat does the session passivation.  Any opinions on the best way to deal with this?  It's obviously fairly harmless but the message is semi annoying?
> java.lang.NullPointerException
> 	at org.jboss.seam.contexts.BasicContext.get(BasicContext.java:48)
> 	at org.jboss.seam.Component.forName(Component.java:1709)
> 	at org.jboss.seam.Component.getInstance(Component.java:1757)
> 	at org.jboss.seam.Component.getInstance(Component.java:1752)
> 	at org.jboss.seam.Component.getInstance(Component.java:1729)
> 	at org.jboss.seam.Component.getInstance(Component.java:1724)
> 	at org.jboss.seam.core.Events.instance(Events.java:154)
> 	at org.jboss.seam.core.Events.exists(Events.java:149)
> 	at org.jboss.seam.contexts.Contexts.destroy(Contexts.java:236)
> 	at org.jboss.seam.contexts.Lifecycle.endCall(Lifecycle.java:91)
> 	at org.jboss.seam.persistence.ManagedPersistenceContext.sessionWillPassivate(ManagedPersistenceContext.java:157)
> 	at org.apache.catalina.session.StandardSession.passivate(StandardSession.java:774)
> 	at org.apache.catalina.session.StandardManager.doUnload(StandardManager.java:516)
> 	at org.apache.catalina.session.StandardManager.unload(StandardManager.java:463)
> 	at org.apache.catalina.session.StandardManager.stop(StandardManager.java:667)
> 	at org.apache.catalina.core.StandardContext.stop(StandardContext.java:4363)
> 	at org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1067)
> 	at org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1067)
> 	at org.apache.catalina.core.StandardEngine.stop(StandardEngine.java:448)
> 	at org.apache.catalina.core.StandardService.stop(StandardService.java:510)
> 	at org.apache.catalina.core.StandardServer.stop(StandardServer.java:734)
> 	at org.apache.catalina.startup.Catalina.stop(Catalina.java:602)
> 	at org.apache.catalina.startup.Catalina.start(Catalina.java:577)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:585)
> 	at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:295)
> 	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433)

-- 
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 seam-issues mailing list