[SPRING + JSF + TOMCAT] NotSerializableException: DefaultListableBeanFactory

Tenho recebido a seguinte exception de forma inesperada na aplicação.
Não entendo o porque dessa serialização uma vez o javax.faces.STATE_SAVING_METHOD está setado server.
Ela está acontecendo ao levantar aplicação no tomcat, mas também acontece em produção com o uso dos usuários…

Se alguem puder ajudar…

java.io.WriteAbortedException: writing aborted; java.io.NotSerializableException: org.springframework.beans.factory.support.DefaultListableBeanFactory

	at java.io.ObjectInputStream.readObject0(Unknown Source)

	at java.io.ObjectInputStream.defaultReadFields(Unknown Source)

	at java.io.ObjectInputStream.readSerialData(Unknown Source)

	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)

	at java.io.ObjectInputStream.readObject0(Unknown Source)

	at java.io.ObjectInputStream.readObject(Unknown Source)

	at org.springframework.transaction.interceptor.TransactionInterceptor.readObject(TransactionInterceptor.java:177)

	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

	at java.lang.reflect.Method.invoke(Unknown Source)

	at java.io.ObjectStreamClass.invokeReadObject(Unknown Source)

	at java.io.ObjectInputStream.readSerialData(Unknown Source)

	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)

	at java.io.ObjectInputStream.readObject0(Unknown Source)

	at java.io.ObjectInputStream.defaultReadFields(Unknown Source)

	at java.io.ObjectInputStream.readSerialData(Unknown Source)

	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)

	at java.io.ObjectInputStream.readObject0(Unknown Source)

	at java.io.ObjectInputStream.readArray(Unknown Source)

	at java.io.ObjectInputStream.readObject0(Unknown Source)

	at java.io.ObjectInputStream.defaultReadFields(Unknown Source)

	at java.io.ObjectInputStream.defaultReadObject(Unknown Source)

	at org.springframework.aop.framework.AdvisedSupport.readObject(AdvisedSupport.java:536)

	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

	at java.lang.reflect.Method.invoke(Unknown Source)

	at java.io.ObjectStreamClass.invokeReadObject(Unknown Source)

	at java.io.ObjectInputStream.readSerialData(Unknown Source)

	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)

	at java.io.ObjectInputStream.readObject0(Unknown Source)

	at java.io.ObjectInputStream.defaultReadFields(Unknown Source)

	at java.io.ObjectInputStream.readSerialData(Unknown Source)

	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)

	at java.io.ObjectInputStream.readObject0(Unknown Source)

	at java.io.ObjectInputStream.defaultReadFields(Unknown Source)

	at java.io.ObjectInputStream.readSerialData(Unknown Source)

	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)

	at java.io.ObjectInputStream.readObject0(Unknown Source)

	at java.io.ObjectInputStream.defaultReadFields(Unknown Source)

	at java.io.ObjectInputStream.readSerialData(Unknown Source)

	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)

	at java.io.ObjectInputStream.readObject0(Unknown Source)

	at java.io.ObjectInputStream.readObject(Unknown Source)

	at org.apache.catalina.session.StandardSession.readObject(StandardSession.java:1441)

	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:4271)

	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:830)

	at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:719)

	at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:490)

	at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1149)

	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:578)

	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

	at java.lang.reflect.Method.invoke(Unknown Source)

	at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)

	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)

Caused by: java.io.NotSerializableException: org.springframework.beans.factory.support.DefaultListableBeanFactory

	at java.io.ObjectOutputStream.writeObject0(Unknown Source)

	at java.io.ObjectOutputStream.defaultWriteFields(Unknown Source)

	at java.io.ObjectOutputStream.writeSerialData(Unknown Source)

	at java.io.ObjectOutputStream.writeOrdinaryObject(Unknown Source)

	at java.io.ObjectOutputStream.writeObject0(Unknown Source)

	at java.io.ObjectOutputStream.writeObject(Unknown Source)

	at org.springframework.transaction.interceptor.TransactionInterceptor.writeObject(TransactionInterceptor.java:186)

	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

	at java.lang.reflect.Method.invoke(Unknown Source)

	at java.io.ObjectStreamClass.invokeWriteObject(Unknown Source)

	at java.io.ObjectOutputStream.writeSerialData(Unknown Source)

	at java.io.ObjectOutputStream.writeOrdinaryObject(Unknown Source)

	at java.io.ObjectOutputStream.writeObject0(Unknown Source)

	at java.io.ObjectOutputStream.defaultWriteFields(Unknown Source)

	at java.io.ObjectOutputStream.writeSerialData(Unknown Source)

	at java.io.ObjectOutputStream.writeOrdinaryObject(Unknown Source)

	at java.io.ObjectOutputStream.writeObject0(Unknown Source)

	at java.io.ObjectOutputStream.writeArray(Unknown Source)

	at java.io.ObjectOutputStream.writeObject0(Unknown Source)

	at java.io.ObjectOutputStream.defaultWriteFields(Unknown Source)

	at java.io.ObjectOutputStream.writeSerialData(Unknown Source)

	at java.io.ObjectOutputStream.writeOrdinaryObject(Unknown Source)

	at java.io.ObjectOutputStream.writeObject0(Unknown Source)

	at java.io.ObjectOutputStream.defaultWriteFields(Unknown Source)

	at java.io.ObjectOutputStream.writeSerialData(Unknown Source)

	at java.io.ObjectOutputStream.writeOrdinaryObject(Unknown Source)

	at java.io.ObjectOutputStream.writeObject0(Unknown Source)

	at java.io.ObjectOutputStream.defaultWriteFields(Unknown Source)

	at java.io.ObjectOutputStream.writeSerialData(Unknown Source)

	at java.io.ObjectOutputStream.writeOrdinaryObject(Unknown Source)

	at java.io.ObjectOutputStream.writeObject0(Unknown Source)

	at java.io.ObjectOutputStream.defaultWriteFields(Unknown Source)

	at java.io.ObjectOutputStream.writeSerialData(Unknown Source)

	at java.io.ObjectOutputStream.writeOrdinaryObject(Unknown Source)

	at java.io.ObjectOutputStream.writeObject0(Unknown Source)

	at java.io.ObjectOutputStream.writeObject(Unknown Source)

	at org.apache.catalina.session.StandardSession.writeObject(StandardSession.java:1517)

	at org.apache.catalina.session.StandardSession.writeObjectData(StandardSession.java:959)

	at org.apache.catalina.session.StandardManager.doUnload(StandardManager.java:517)

	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:4519)

	at org.apache.catalina.core.ContainerBase.removeChild(ContainerBase.java:924)

	at org.apache.catalina.startup.HostConfig.undeployApps(HostConfig.java:1191)

	at org.apache.catalina.startup.HostConfig.stop(HostConfig.java:1162)

	at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:313)

	at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)

	at org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1086)

	at org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1098)

	at org.apache.catalina.core.StandardEngine.stop(StandardEngine.java:448)

	at org.apache.catalina.core.StandardService.stop(StandardService.java:584)

	at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744)

	at org.apache.catalina.startup.Catalina.stop(Catalina.java:628)

	at org.apache.catalina.startup.Catalina.start(Catalina.java:603)

	... 6 more

Apr 26, 2010 4:40:48 PM org.apache.catalina.session.StandardManager start

SEVERE: Exception loading sessions from persistent storage

java.io.WriteAbortedException: writing aborted; java.io.NotSerializableException: org.springframework.beans.factory.support.DefaultListableBeanFactory

	at java.io.ObjectInputStream.readObject0(Unknown Source)

	at java.io.ObjectInputStream.defaultReadFields(Unknown Source)

	at java.io.ObjectInputStream.readSerialData(Unknown Source)

	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)

	at java.io.ObjectInputStream.readObject0(Unknown Source)

	at java.io.ObjectInputStream.readObject(Unknown Source)

	at org.springframework.transaction.interceptor.TransactionInterceptor.readObject(TransactionInterceptor.java:177)

	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

	at java.lang.reflect.Method.invoke(Unknown Source)

	at java.io.ObjectStreamClass.invokeReadObject(Unknown Source)

	at java.io.ObjectInputStream.readSerialData(Unknown Source)

	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)

	at java.io.ObjectInputStream.readObject0(Unknown Source)

	at java.io.ObjectInputStream.defaultReadFields(Unknown Source)

	at java.io.ObjectInputStream.readSerialData(Unknown Source)

	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)

	at java.io.ObjectInputStream.readObject0(Unknown Source)

	at java.io.ObjectInputStream.readArray(Unknown Source)

	at java.io.ObjectInputStream.readObject0(Unknown Source)

	at java.io.ObjectInputStream.defaultReadFields(Unknown Source)

	at java.io.ObjectInputStream.defaultReadObject(Unknown Source)

	at org.springframework.aop.framework.AdvisedSupport.readObject(AdvisedSupport.java:536)

	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

	at java.lang.reflect.Method.invoke(Unknown Source)

	at java.io.ObjectStreamClass.invokeReadObject(Unknown Source)

	at java.io.ObjectInputStream.readSerialData(Unknown Source)

	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)

	at java.io.ObjectInputStream.readObject0(Unknown Source)

	at java.io.ObjectInputStream.defaultReadFields(Unknown Source)

	at java.io.ObjectInputStream.readSerialData(Unknown Source)

	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)

	at java.io.ObjectInputStream.readObject0(Unknown Source)

	at java.io.ObjectInputStream.defaultReadFields(Unknown Source)

	at java.io.ObjectInputStream.readSerialData(Unknown Source)

	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)

	at java.io.ObjectInputStream.readObject0(Unknown Source)

	at java.io.ObjectInputStream.defaultReadFields(Unknown Source)

	at java.io.ObjectInputStream.readSerialData(Unknown Source)

	at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)

	at java.io.ObjectInputStream.readObject0(Unknown Source)

	at java.io.ObjectInputStream.readObject(Unknown Source)

	at org.apache.catalina.session.StandardSession.readObject(StandardSession.java:1441)

	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:4271)

	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:830)

	at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:719)

	at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:490)

	at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1149)

	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:578)

	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

	at java.lang.reflect.Method.invoke(Unknown Source)

	at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)

	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)

Caused by: java.io.NotSerializableException: org.springframework.beans.factory.support.DefaultListableBeanFactory

	at java.io.ObjectOutputStream.writeObject0(Unknown Source)

	at java.io.ObjectOutputStream.defaultWriteFields(Unknown Source)

	at java.io.ObjectOutputStream.writeSerialData(Unknown Source)

	at java.io.ObjectOutputStream.writeOrdinaryObject(Unknown Source)

	at java.io.ObjectOutputStream.writeObject0(Unknown Source)

	at java.io.ObjectOutputStream.writeObject(Unknown Source)

	at org.springframework.transaction.interceptor.TransactionInterceptor.writeObject(TransactionInterceptor.java:186)

	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

	at java.lang.reflect.Method.invoke(Unknown Source)

	at java.io.ObjectStreamClass.invokeWriteObject(Unknown Source)

	at java.io.ObjectOutputStream.writeSerialData(Unknown Source)

	at java.io.ObjectOutputStream.writeOrdinaryObject(Unknown Source)

	at java.io.ObjectOutputStream.writeObject0(Unknown Source)

	at java.io.ObjectOutputStream.defaultWriteFields(Unknown Source)

	at java.io.ObjectOutputStream.writeSerialData(Unknown Source)

	at java.io.ObjectOutputStream.writeOrdinaryObject(Unknown Source)

	at java.io.ObjectOutputStream.writeObject0(Unknown Source)

	at java.io.ObjectOutputStream.writeArray(Unknown Source)

	at java.io.ObjectOutputStream.writeObject0(Unknown Source)

	at java.io.ObjectOutputStream.defaultWriteFields(Unknown Source)

	at java.io.ObjectOutputStream.writeSerialData(Unknown Source)

	at java.io.ObjectOutputStream.writeOrdinaryObject(Unknown Source)

	at java.io.ObjectOutputStream.writeObject0(Unknown Source)

	at java.io.ObjectOutputStream.defaultWriteFields(Unknown Source)

	at java.io.ObjectOutputStream.writeSerialData(Unknown Source)

	at java.io.ObjectOutputStream.writeOrdinaryObject(Unknown Source)

	at java.io.ObjectOutputStream.writeObject0(Unknown Source)

	at java.io.ObjectOutputStream.defaultWriteFields(Unknown Source)

	at java.io.ObjectOutputStream.writeSerialData(Unknown Source)

	at java.io.ObjectOutputStream.writeOrdinaryObject(Unknown Source)

	at java.io.ObjectOutputStream.writeObject0(Unknown Source)

	at java.io.ObjectOutputStream.defaultWriteFields(Unknown Source)

	at java.io.ObjectOutputStream.writeSerialData(Unknown Source)

	at java.io.ObjectOutputStream.writeOrdinaryObject(Unknown Source)

	at java.io.ObjectOutputStream.writeObject0(Unknown Source)

	at java.io.ObjectOutputStream.writeObject(Unknown Source)

	at org.apache.catalina.session.StandardSession.writeObject(StandardSession.java:1517)

	at org.apache.catalina.session.StandardSession.writeObjectData(StandardSession.java:959)

	at org.apache.catalina.session.StandardManager.doUnload(StandardManager.java:517)

	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:4519)

	at org.apache.catalina.core.ContainerBase.removeChild(ContainerBase.java:924)

	at org.apache.catalina.startup.HostConfig.undeployApps(HostConfig.java:1191)

	at org.apache.catalina.startup.HostConfig.stop(HostConfig.java:1162)

	at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:313)

	at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)

	at org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1086)

	at org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1098)

	at org.apache.catalina.core.StandardEngine.stop(StandardEngine.java:448)

	at org.apache.catalina.core.StandardService.stop(StandardService.java:584)

	at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744)

	at org.apache.catalina.startup.Catalina.stop(Catalina.java:628)

	at org.apache.catalina.startup.Catalina.start(Catalina.java:603)

	... 6 more

as suas classes de entidade implementam a interface serializable??

Zoren
Sim todas são serializable.

Você disse tudo: De fato se o javax.faces.STATE_SAVING_METHOD estiver como client, este erro é gerado.

Se puder, passa os arquivos de configuração do seu projeto. (web.xml, faces-config, applicationContext.xml)

alexmdo,

Tenho outro problema, que é o fato que com frequência ‘pego’ session fechadas, aí postei esse erro aqui com as minhas configurações.
Esse problema ainda está em aberto. Nesse tópico têm as minhas configurações. Não lembro de ter mudado desde o post.

http://www.guj.com.br/posts/list/204286.java

Dá uma sacada…

Me diga uma coisa: esse erro eh intermitente ou costuma ocorrer somente numa determinada etapa do processo de sua aplicacao?

Imagino que mesmo se estivesse configurado javax.faces.STATE_SAVING_METHOD como client, da forma como foi desenvolvida sua aplicacao, nao deveria abrir nenhuma pagina com sucesso.

Posta o web.xml. Nao consegui ver este arquivo no outro post.