2006-11-03

Tomcat 5的Session Persistent问题

关键字: Tomcat,Session Persistent
碰到这样一个问题:
引用
2006-7-26 20:49:41 org.apache.catalina.session.StandardManager start
严重: Exception loading sessions from persistent storage
java.io.WriteAbortedException: writing aborted; java.io.NotSerializableException: ...


J2ee的session并没有要求session attribute必须要Serializable呀。原来这是tomcat 5的新功能,服务复位后自动恢复session

如果要禁用这一特性,到apache-tomcat/conf/Catalina/localhost目录下找到webapp同名的xml,修改成:

引用
<Context path="..." reloadable="..." docBase="..." workDir="...">
<Manager className="org.apache.catalina.session.PersistentManager" saveOnRestart="false"/>
</Context>


对于使用Netbeans自带tomcat的情况,配置文件在用户Home目录下的.netbeans底下,例如我windows机器上是:
C:\Documents and Settings\pinxue\.netbeans\5.5beta\apache-tomcat-5.5.16_base\conf\Catalina\localhost\

如果想保留这个功能,但是清除异常的session持久记录,删除相应的SESSION.ser即可,该文件在:
.netbeans\5.5beta\apache-tomcat-5.5.16_base\work\Catalina\localhost\{webAppName}\SESSIONS.ser

补充:
Netbeans 重新发布 webapp 后,对应的context会重新生成,应该修改项目下META-INF/context.xml。
Netbeans生成该文件的模板是:
\Program Files\netbeans-5.5beta\enterprise3\apache-tomcat-5.5.16\conf\context.xml
评论
robbin 2006-11-03
不错的文章!
发表评论

您还没有登录,请登录后发表评论

iceskysl
搜索本博客
我的相册
6e4b1028-c838-4ae2-9808-316c7a60e315-thumb
111
共 1 张
最近加入圈子
存档
最新评论