【问题标题】:IOException while loading persisted sessions on Tomcat 6.0 [duplicate]在 Tomcat 6.0 上加载持久会话时出现 IOException [重复]
【发布时间】:2013-01-05 10:26:48
【问题描述】:

我们在 flex 中有一个应用程序,它部署在负载平衡的 Tomcat 6.0 上(有一个负载平衡器将请求传递到 2 个 tomcat 服务器)。

我们在访问应用程序时遇到 404 错误。在挖掘 tomat 日志时,我们发现了以下错误

日志跟踪

2013-01-17 10:42:54,148 org.apache.catalina.session.ManagerBase - IOException while loading persisted sessions: java.io.WriteAbortedException: writing aborted; java.io.NotSerializableException: bean.Login
java.io.WriteAbortedException: writing aborted; java.io.NotSerializableException: bean.Login
        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1332)
        at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1946)
..
2013-01-17 10:43:04,135 org.apache.catalina.session.ManagerBase - Exception loading sessions from persistent storage
java.io.WriteAbortedException: writing aborted; java.io.NotSerializableException: bean.Login
        at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1332)
        at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1946)
…
Caused by: java.io.NotSerializableException: bean.Login
        at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1164)

原因

此错误的可能原因是 Tomcat 在您关闭时尝试序列化所有活动会话的完整对象图,然后在您重新启动时尝试恢复它们。关键是Tomcat使用“普通”的java对象序列化,它要求所有对象都是Serializable。

我们在 Spring 中将 Login bean 映射如下

<bean id="currLogin" class="bean.Login" scope="session">
      <aop:scoped-proxy />
</bean>

补救措施

短期

  • 删除catalina_home/work目录下的文件session.ser
  • 重启 tomcat 服务器

我们能够在弹回服务器后登录到应用程序而不会出现错误。

长期

  • 通过实现 Serializable 使 bean.Login 可序列化 界面。
  • 没有 Tomcat 序列化会话(添加 到 context.xml,在应用程序或全局 tomcat 中 context.xml 在 conf/ 目录中,在元素内。

请告诉我们解决此问题的方法?

【问题讨论】:

    标签: java spring tomcat


    【解决方案1】:

    我相信,如果您希望 Tomcat 在重启之间将对象保留在 Session 中,您将需要实现 Serializable 接口。几乎你已经回答了你自己的问题。

    您是否希望它们在重新启动之间保留。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-12-07
      • 1970-01-01
      • 1970-01-01
      • 2011-07-06
      • 2017-12-27
      • 2016-06-14
      • 2019-02-27
      • 2011-07-26
      相关资源
      最近更新 更多