关于tomcat部署项目后 启动时异常分析(1)

tomcat异常信息:

严重: IOException while loading persisted sessions: java.io.EOFException
java.io.EOFException
        at java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream
.java:2281)
       ..........................
2014-5-4 21:49:41 org.apache.catalina.session.StandardManager startInternal

以上信息为项目动态部署后,tomcat控制台抛出的异常

分析:EOFException表示输入过程中意外地到达文件尾或流尾的信号,导致从session中获取数据失败。异常是tomcat本身的问题,由于tomcat上次非正常关闭时有一些活动session被持久化(表现为一些临时文件),在重启时,tomcat尝试去恢复这些session的持久化数据但又读取失败造成的。此异常不影响系统的使用。

解决办法:将tomcat6.0\work\Catalina\localhost\peam\SESSIONS.ser删除。如果正常关闭服务端,该文件是自动删除的。

我参照上面方法解决的问题,用的是MyEclipse6.0,tomcat6.0。通常情况下,会认为是tomcat的缓存,会直接把整个localhost文件夹删除。但是上面的方法也是可取的,在localhost文件夹下,找到部署的工程名,在该工程名下有SESSIONS.ser文件,直接删除。重启tomcat,问题解决。

另外值得注意的是解决办法中 "将tomcat6.0\work\Catalina\localhost\peam\SESSIONS.ser删除" 写的为tomcat中默认保存项目缓存的路径,因为大家都有自己不同的目录结构,比如我的另一个tomcat目录结构是这样的:D:\elproject\.metadata\.plugins \com.genuitec.eclipse.easie.tomcat.myeclipse\tomcat\work\Catalina \localhost,在这里我恰好有三个项目,我在其中的一个目录中找到了SESSIONS.ser,并将其删除,重启,ok."

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章