[jboss-user] [JBoss Seam] - Exception thrown on Stateful Session Bean lifecycle

sverker do-not-reply at jboss.com
Tue Aug 7 06:54:09 EDT 2007


I keep on getting stacktraces as below:


  | 12:22:58,152 WARN  [Contexts] Could not destroy component: callHandler
  | java.lang.RuntimeException: java.io.IOException
  |         at org.jboss.ejb3.stateful.StatefulBeanContext.extractBeanAndInterceptor
  | s(StatefulBeanContext.java:809)
  |         at org.jboss.ejb3.stateful.StatefulBeanContext.getInstance(StatefulBeanC
  | ontext.java:740)
  |         at org.jboss.injection.JndiFieldInjector.inject(JndiFieldInjector.java:6
  | 2)
  |         at org.jboss.ejb3.stateful.StatefulContainer.invokePostActivate(Stateful
  | Container.java:397)
  |         at org.jboss.ejb3.stateful.StatefulBeanContext.postActivate(StatefulBean
  | Context.java:381)
  |         at org.jboss.ejb3.cache.simple.StatefulSessionFilePersistenceManager.act
  | ivateSession(StatefulSessionFilePersistenceManager.java:316)
  |         at org.jboss.ejb3.cache.simple.SimpleStatefulCache.get(SimpleStatefulCac
  | he.java:387)
  |         at org.jboss.ejb3.cache.simple.SimpleStatefulCache.get(SimpleStatefulCac
  | he.java:375)
  |         at org.jboss.ejb3.stateful.StatefulInstanceInterceptor.invoke(StatefulIn
  | stanceInterceptor.java:61)
  |         at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.
  | java:101)
  |         at org.jboss.ejb3.stateful.StatefulRemoveInterceptor.invoke(StatefulRemo
  | veInterceptor.java:97)
  |         at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.
  | java:101)
  |         at org.jboss.aspects.security.AuthenticationInterceptor.invoke(Authentic
  | ationInterceptor.java:77)
  |         at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3Auth
  | enticationInterceptor.java:106)
  |         at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.
  | java:101)
  |         at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterce
  | ptor.java:46)
  |         at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.
  | java:101)
  |         at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(Asynchrono
  | usInterceptor.java:106)
  |         at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.
  | java:101)
  |         at org.jboss.ejb3.stateful.StatefulContainer.localInvoke(StatefulContain
  | er.java:204)
  |         at org.jboss.ejb3.stateful.StatefulLocalProxy.invoke(StatefulLocalProxy.
  | java:100)
  |         at $Proxy216.destroy(Unknown Source)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
  | java:39)
  |         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
  | sorImpl.java:25)
  |         at java.lang.reflect.Method.invoke(Method.java:585)
  |         at org.jboss.seam.util.Reflections.invoke(Reflections.java:20)
  |         at org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocation
  | Context.java:31)
  |         at org.jboss.seam.intercept.ClientSideInterceptor$1.proceed(ClientSideIn
  | terceptor.java:72)
  |         at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocation
  | Context.java:57)
  |         at org.jboss.seam.interceptors.SecurityInterceptor.aroundInvoke(Security
  | Interceptor.java:37)
  |         at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocation
  | Context.java:69)
  |         at org.jboss.seam.interceptors.RemoveInterceptor.aroundInvoke(RemoveInte
  | rceptor.java:40)
  |         at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocation
  | Context.java:69)
  |         at org.jboss.seam.interceptors.SynchronizationInterceptor.aroundInvoke(S
  | ynchronizationInterceptor.java:31)
  |         at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocation
  | Context.java:69)
  |         at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:
  | 103)
  |         at org.jboss.seam.intercept.ClientSideInterceptor.invoke(ClientSideInter
  | ceptor.java:50)
  |         at org.javassist.tmp.java.lang.Object_$$_javassist_21.destroy(Object_$$_
  | javassist_21.java)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
  | java:39)
  |         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
  | sorImpl.java:25)
  |         at java.lang.reflect.Method.invoke(Method.java:585)
  |         at org.jboss.seam.util.Reflections.invoke(Reflections.java:20)
  |         at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:123)
  |         at org.jboss.seam.Component.callComponentMethod(Component.java:1834)
  |         at org.jboss.seam.Component.callDestroyMethod(Component.java:1765)
  |         at org.jboss.seam.contexts.Contexts.destroy(Contexts.java:231)
  |         at org.jboss.seam.contexts.Lifecycle.endSession(Lifecycle.java:297)
  |         at org.jboss.seam.servlet.SeamListener.sessionDestroyed(SeamListener.jav
  | a:45)
  |         at org.apache.catalina.session.StandardSession.expire(StandardSession.ja
  | va:702)
  |         at org.apache.catalina.session.StandardSession.isValid(StandardSession.j
  | ava:592)
  |         at org.apache.catalina.session.ManagerBase.processExpires(ManagerBase.ja
  | va:682)
  |         at org.apache.catalina.session.ManagerBase.backgroundProcess(ManagerBase
  | .java:667)
  |         at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBas
  | e.java:1286)
  |         at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.p
  | rocessChildren(ContainerBase.java:1571)
  |         at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.p
  | rocessChildren(ContainerBase.java:1580)
  |         at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.p
  | rocessChildren(ContainerBase.java:1580)
  |         at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.r
  | un(ContainerBase.java:1560)
  |         at java.lang.Thread.run(Thread.java:595)
  | Caused by: java.io.IOException
  |         at org.jboss.serial.persister.RegularObjectPersister.readSlotWithMethod(
  | RegularObjectPersister.java:107)
  |         at org.jboss.serial.persister.RegularObjectPersister.defaultRead(Regular
  | ObjectPersister.java:269)
  |         at org.jboss.serial.persister.RegularObjectPersister.readData(RegularObj
  | ectPersister.java:241)
  |         at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.readObjectDe
  | scriptionFromStreaming(ObjectDescriptorFactory.java:412)
  |         at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.objectFromDe
  | scription(ObjectDescriptorFactory.java:82)
  |         at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectInp
  | ut.readObject(DataContainer.java:643)
  |         at org.jboss.serial.persister.RegularObjectPersister.readSlotWithFields(
  | RegularObjectPersister.java:353)
  |         at org.jboss.serial.persister.RegularObjectPersister.defaultRead(Regular
  | ObjectPersister.java:273)
  |         at org.jboss.serial.persister.RegularObjectPersister.readData(RegularObj
  | ectPersister.java:241)
  |         at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.readObjectDe
  | scriptionFromStreaming(ObjectDescriptorFactory.java:412)
  |         at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.objectFromDe
  | scription(ObjectDescriptorFactory.java:82)
  |         at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectInp
  | ut.readObject(DataContainer.java:643)
  |         at org.jboss.serial.persister.RegularObjectPersister.readSlotWithFields(
  | RegularObjectPersister.java:353)
  |         at org.jboss.serial.persister.RegularObjectPersister.defaultRead(Regular
  | ObjectPersister.java:273)
  |         at org.jboss.serial.persister.RegularObjectPersister.readData(RegularObj
  | ectPersister.java:241)
  |         at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.readObjectDe
  | scriptionFromStreaming(ObjectDescriptorFactory.java:412)
  |         at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.objectFromDe
  | scription(ObjectDescriptorFactory.java:82)
  |         at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectInp
  | ut.readObject(DataContainer.java:643)
  |         at org.jboss.serial.persister.ArrayPersister.readObjectArray(ArrayPersis
  | ter.java:196)
  |         at org.jboss.serial.persister.ArrayPersister.readData(ArrayPersister.jav
  | a:172)
  |         at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.readObjectDe
  | scriptionFromStreaming(ObjectDescriptorFactory.java:412)
  |         at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.objectFromDe
  | scription(ObjectDescriptorFactory.java:82)
  |         at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectInp
  | ut.readObject(DataContainer.java:643)
  |         at org.jboss.serial.io.JBossObjectInputStream.readObjectOverride(JBossOb
  | jectInputStream.java:163)
  |         at java.io.ObjectInputStream.readObject(ObjectInputStream.java:333)
  |         at org.jboss.serial.io.MarshalledObject.get(MarshalledObject.java:68)
  |         at org.jboss.ejb3.stateful.StatefulBeanContext.extractBeanAndInterceptor
  | s(StatefulBeanContext.java:780)
  |         ... 59 more
  | Caused by: java.lang.reflect.InvocationTargetException
  |         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
  | java:39)
  |         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
  | sorImpl.java:25)
  |         at java.lang.reflect.Method.invoke(Method.java:585)
  |         at org.jboss.serial.persister.RegularObjectPersister.readSlotWithMethod(
  | RegularObjectPersister.java:103)
  |         ... 85 more
  | Caused by: org.jboss.serial.exception.SerializationException: Could not create i
  | nstance of se.sodermalmskyrkan.callcenter.CallHandlerActionBean$1 - se.sodermalm
  | skyrkan.callcenter.CallHandlerActionBean$1
  |         at org.jboss.serial.classmetamodel.ClassMetaData.newInstance(ClassMetaDa
  | ta.java:342)
  |         at org.jboss.serial.persister.RegularObjectPersister.readData(RegularObj
  | ectPersister.java:239)
  |         at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.readObjectDe
  | scriptionFromStreaming(ObjectDescriptorFactory.java:412)
  |         at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.objectFromDe
  | scription(ObjectDescriptorFactory.java:82)
  |         at org.jboss.serial.objectmetamodel.DataContainer$DataContainerDirectInp
  | ut.readObject(DataContainer.java:643)
  |         at org.jboss.serial.persister.RegularObjectPersister.readSlotWithFields(
  | RegularObjectPersister.java:353)
  |         at org.jboss.serial.persister.ObjectInputStreamProxy.defaultReadObject(O
  | bjectInputStreamProxy.java:78)
  |         at java.util.PriorityQueue.readObject(PriorityQueue.java:638)
  |         ... 90 more
  | Caused by: java.lang.InstantiationException: se.sodermalmskyrkan.callcenter.Call
  | HandlerActionBean$1
  |         at java.lang.Class.newInstance0(Class.java:335)
  |         at java.lang.Class.newInstance(Class.java:303)
  |         at org.jboss.serial.classmetamodel.ClassMetaData.newInstance(ClassMetaDa
  | ta.java:334)
  |         ... 97 more
  | 

These seam to occur after some time of inactivity, on my test system it happens after about 1 hour but in the live system it can happen already after 5-10 minutes causing the application to fail.

What can be the reason? I saw some suggestion on a similar case that the bean would have an atttribute which isn't Serializable but all my attributes are Serializable as far as I can find.

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4071546#4071546

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4071546



More information about the jboss-user mailing list