2011-04-30 68 views
5

由于有些日子我在tomcat重新加载上下文时遇到问题。在大多数情况下,它有效,在某些情况下它失败。我得到以下错误:Tomcat 6在上下文重新加载时失败

30.04.2011 22:52:16 org.apache.catalina.loader.WebappClassLoader modified 
SCHWERWIEGEND:  Resource '/WEB-INF/classes/com/sample/ContextLoaderListener.class' is missing 
30.04.2011 22:52:16 org.apache.catalina.core.StandardContext reload 
INFO: Reloading this Context has started 
30.04.2011 22:52:16 org.apache.catalina.core.ApplicationContext log 
INFO: Destroying Spring FrameworkServlet 'application' 
2011-04-30 22:52:16,456 [ContainerBackgroundProcessor[StandardEngine[Catalina]]] 7780618 [ContainerBackgroundProcessor[StandardEngine[Catalina]]] (AbstractApplicationContext.java:1002) INFO - Closing WebApplicationContext for namespace 'application-servlet': startup date [Sat Apr 30 20:42:35 CEST 2011]; parent: Root WebApplicationContext 
2011-04-30 22:52:16,460 [ContainerBackgroundProcessor[StandardEngine[Catalina]]] 7780622 [ContainerBackgroundProcessor[StandardEngine[Catalina]]] (DefaultSingletonBeanRegistry.java:422) INFO - Destroying singletons in org.s[email protected]6684b1e0: defining beans parent: org.s[email protected]7f6b321b 
30.04.2011 22:52:16 org.apache.catalina.session.StandardManager doUnload 
SCHWERWIEGEND: IOException while saving persisted sessions: java.io.FileNotFoundException: C:\dev\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp3\work\Catalina\localhost\_\SESSIONS.ser (Das System kann den angegebenen Pfad nicht finden) 
java.io.FileNotFoundException: C:\dev\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp3\work\Catalina\localhost\_\SESSIONS.ser (Das System kann den angegebenen Pfad nicht finden) 
    at java.io.FileOutputStream.open(Native Method) 
    at java.io.FileOutputStream.<init>(FileOutputStream.java:179) 
    at java.io.FileOutputStream.<init>(FileOutputStream.java:70) 
    at org.apache.catalina.session.StandardManager.doUnload(StandardManager.java:489) 
    at org.apache.catalina.session.StandardManager$PrivilegedDoUnload.run(StandardManager.java:89) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at org.apache.catalina.session.StandardManager.unload(StandardManager.java:452) 
    at org.apache.catalina.session.StandardManager.stop(StandardManager.java:667) 
    at org.apache.catalina.core.StandardContext.stop(StandardContext.java:4611) 
    at org.apache.catalina.core.StandardContext.reload(StandardContext.java:3222) 
    at org.apache.catalina.loader.WebappLoader.backgroundProcess(WebappLoader.java:403) 
    at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1309) 
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1601) 
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1610) 
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1610) 
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1590) 
    at java.lang.Thread.run(Thread.java:662) 
30.04.2011 22:52:16 org.apache.catalina.session.StandardManager stop 
SCHWERWIEGEND: Exception unloading sessions to persistent storage 
java.io.FileNotFoundException: C:\dev\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp3\work\Catalina\localhost\_\SESSIONS.ser (Das System kann den angegebenen Pfad nicht finden) 
    at java.io.FileOutputStream.open(Native Method) 
    at java.io.FileOutputStream.<init>(FileOutputStream.java:179) 
    at java.io.FileOutputStream.<init>(FileOutputStream.java:70) 
    at org.apache.catalina.session.StandardManager.doUnload(StandardManager.java:489) 
    at org.apache.catalina.session.StandardManager$PrivilegedDoUnload.run(StandardManager.java:89) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at org.apache.catalina.session.StandardManager.unload(StandardManager.java:452) 
    at org.apache.catalina.session.StandardManager.stop(StandardManager.java:667) 
    at org.apache.catalina.core.StandardContext.stop(StandardContext.java:4611) 
    at org.apache.catalina.core.StandardContext.reload(StandardContext.java:3222) 
    at org.apache.catalina.loader.WebappLoader.backgroundProcess(WebappLoader.java:403) 
    at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1309) 
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1601) 
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1610) 
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1610) 
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1590) 
    at java.lang.Thread.run(Thread.java:662) 

正如你可以看到我写我自己的ServletContextListener这是不被Tomcat找到。我正在使用Eclipse WST进行开发。

感谢您的任何有用的提示!

回答

5

关闭Eclipse和删除

C:\dev\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp3\work\* 

,然后重试。如果这不起作用,请删除tmp3文件夹,然后重试。

我一直很难在Eclipse中使用Tomcat。对于我来说,当我退出Eclipse而不关闭Tomcat或Eclipse/Tomcat崩溃时,会发生这种情况。

+0

是的,这是有效的。我通常停止服务器并清理tomcat。无论如何,我想摆脱一般的错误... – Erik 2011-04-30 21:28:55

+0

你能摆脱一般的错误?如果您有任何运气,请发布更新。 – sbidwai 2013-01-07 17:57:24

+1

我每天都遭受这个问题多次。删除Tomcat的工作目录会有帮助,但只能进行一些重新加载。我也尝试将catalina.base路径放入tmpfs中,但这并没有帮助。这迫使我坚持下去。 – yglodt 2014-01-16 16:00:10

相关问题