Java Tomcat:无法将会话序列化到数据库中

Java Tomcat:无法将会话序列化到数据库中,java,session,tomcat,struts2,tomcat7,Java,Session,Tomcat,Struts2,Tomcat7,我们在MySQL中使用Tomcat7会话持久性 我们经常得到这个错误和堆栈跟踪。根据这些线程,这个错误是struts中的一个bug,已经解决了 我们正在使用Struts 2.3.16,但仍然会遇到这个错误。有什么想法吗 WARNING: Cannot serialize session attribute org.apache.struts2.util.InvocationSessionStore.invocationMap for session DA0863E5D8B4FD7DBC19B9

我们在MySQL中使用Tomcat7会话持久性

我们经常得到这个错误和堆栈跟踪。根据这些线程,这个错误是struts中的一个bug,已经解决了

我们正在使用Struts 2.3.16,但仍然会遇到这个错误。有什么想法吗

WARNING: Cannot serialize session attribute org.apache.struts2.util.InvocationSessionStore.invocationMap for session DA0863E5D8B4FD7DBC19B9C3D520D4DB
java.io.NotSerializableException: com.opensymphony.xwork2.inject.ContainerImpl$ConstructorInjector
    at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1183)
    at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:347)
    at com.opensymphony.xwork2.inject.util.ReferenceMap.writeObject(ReferenceMap.java:595)
    at sun.reflect.GeneratedMethodAccessor1267.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:988)
    at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1495)
    at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1431)
    at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1177)
    at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1547)
    at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1508)
    at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1431)
    at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1177)
    at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1547)
    at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1508)
    at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1431)
    at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1177)
    at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1547)
    at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1508)
    at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1431)
    at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1177)
    at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1547)
    at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1508)
    at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1431)
    at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1177)
    at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:347)
    at java.util.HashMap.writeObject(HashMap.java:1129)
    at sun.reflect.GeneratedMethodAccessor234.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:988)
    at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1495)
    at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1431)
    at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1177)
    at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:347)
    at org.apache.catalina.session.StandardSession.writeObject(StandardSession.java:1671)
    at org.apache.catalina.session.StandardSession.writeObjectData(StandardSession.java:1077)
    at org.apache.catalina.session.JDBCStore.save(JDBCStore.java:824)
    at org.apache.catalina.session.PersistentManagerBase.writeSession(PersistentManagerBase.java:834)
    at org.apache.catalina.session.PersistentManagerBase.processMaxIdleBackups(PersistentManagerBase.java:1040)
    at org.apache.catalina.session.PersistentManagerBase.processPersistenceChecks(PersistentManagerBase.java:464)
    at org.apache.catalina.session.PersistentManagerBase.processExpires(PersistentManagerBase.java:443)
    at org.apache.catalina.session.ManagerBase.backgroundProcess(ManagerBase.java:519)
    at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1352)
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1530)
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1540)
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1540)
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1519)
    at java.lang.Thread.run(Thread.java:745)
警告:无法序列化会话XYZ的会话属性ABC


您可能在会话中包含了一个未实现可序列化接口的对象。

的可能重复项看起来像是您在会话中放置了引用容器或