問題如下:
java.io.FileNotFoundException: E:\apache-tomcat-8.0.37\work\Catalina\localhost\20161013ShoppingCart\SESSIONS.ser (系統找不到指定的路徑。)
at java.io.FileOutputStream.open0(Native Method)
at java.io.FileOutputStream.open(FileOutputStream.java:270)
at java.io.FileOutputStream.<init>(FileOutputStream.java:213)
at java.io.FileOutputStream.<init>(FileOutputStream.java:101)
at org.apache.catalina.session.StandardManager.doUnload(StandardManager.java:299)
at org.apache.catalina.session.StandardManager.unload(StandardManager.java:265)
at org.apache.catalina.session.StandardManager.stopInternal(StandardManager.java:384)
at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:221)
at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5533)
at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:221)
at org.apache.catalina.core.ContainerBase.removeChild(ContainerBase.java:821)
at org.apache.catalina.startup.HostConfig.undeploy(HostConfig.java:1395)
at org.apache.catalina.startup.HostConfig.checkResources(HostConfig.java:1321)
at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1581)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:284)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:95)
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1140)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1376)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1380at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1348)
at java.lang.Thread.run(Thread.java:745)
症狀原因:
(1) Tomcat/work/Catalina/localhost/工程名/SESSIONS.ser
session未超時的情況下服務器關閉的時候被序列化為工程名/SESSIONS.ser 啟動的時候再加載進來,加載的時候報錯了
(2)tomcat 啟動的問題(org.apache.catalina.session.StandardManager.doLoad: IOException
while loading persisted sessions)
大概是說tomcat上次關閉時還有一些活動連接,所以在重啟時tomcat嘗試去恢復這些session造成的。 tomcat的work目錄下面的東西刪一遍。
解決辦法:
把Eclipse關閉,再重新打開運行,沒有問題。
