• java.io.NotSertalizableException解决方案


    具体原因:

    tomcat 5及后续版本在重启服务时候tomcat会尝试恢复上一次的session.

    解决方法:

    方法一(通过配置,使tomcat重启后不重新恢复session):

    在 关闭和重启Tomcat 5时, tomcat 会试图 serialize存在的session资源. 如果 sessions中相关的对象没有实现 serializable 接口, 就会出现Cannot serialize session attribute XXX for 异常

    java.io.NotSerializableException: ...........

    如果你不想看到该异常, 也不想保存session. 那么你可以在项目部署描述文件中(如. test.xml,)(instead of just exploding the war) 的    <Context> tags中间 加上 :

    <Manager className="org.apache.catalina.session.PersistentManager" saveOnRestart="false">
           <Store className="org.apache.catalina.session.FileStore"/>
    </Manager>

    Manager元素可以嵌套在Context组件中。如果不包含它,会自动创建一个缺省的Manager配置,这对大多数需求都是足够的。
    详见Tomcat服务器配置参考http://www.cnjsp.org/document/user/tuman/manager.html

    这样 tomcat 在关闭的时候就不会保存session资源了.

    你也可以在server.xml中指定上面的值. 这也所有的程序都使用这个设置了.

    方法二:

    既然报没有序列化的错误,那我们就把我们的对象序列化了就是了,实现起来也很简单,就是把要放入session的对象序列化即可

    public class YourClassName implements java.io.Serializable{
    }

    原文地址:http://jahunter.javaeye.com/blog/319946

  • 相关阅读:
    小D课堂
    小D课堂
    小D课堂
    小D课堂
    小D课堂
    c++ , const对象中的变量不能被修改
    C++,常成员函数
    c++,给常成员变量赋值
    C++中,引用作为函数参数
    C++中,如何定义和使用指向成员函数的指针
  • 原文地址:https://www.cnblogs.com/orientsun/p/2753264.html
Copyright © 2020-2023  润新知