Tomcat Java GC, выпуск Linux - PullRequest
       19

Tomcat Java GC, выпуск Linux

1 голос
/ 10 июля 2011

Я использую веб-сервер Tomcat (7.0) в Ubuntu.У меня есть тот же файл War, использующий Java 1.6 на моем локальном компьютере с Windows, и у меня нет никаких проблем.Тем не менее, на Linux-машине мой tomcat не удается через некоторое время или перестает работать, и я получаю исключения Java GC.Он начинается с этих ошибок:

Jul 10, 2011 4:29:05 PM org.apache.catalina.startup.HostConfig checkResources INFO: Undeploying context [/manager] Jul 10, 2011 4:29:05 PM org.apache.catalina.session.StandardManager doUnload SEVERE: IOException while saving persisted sessions: java.io.FileNotFoundException: /home/infocomm/tomcat/work/Catalina/localhost/manager/SESSIONS.ser (No such file or directory) java.io.FileNotFoundException: /home/infocomm/tomcat/work/Catalina/localhost/manager/SESSIONS.ser (No such file or directory)

Затем эти ошибки:

  Jul 10, 2011 4:29:05 PM org.apache.catalina.loader.WebappClassLoader clearReferencesJdbc
WARNING: JDBC driver de-registration failed for web application [/manager]
java.lang.NullPointerException
    at org.apache.catalina.loader.WebappClassLoader.clearReferencesJdbc(WebappClassLoader.java:2012)
    at org.apache.catalina.loader.WebappClassLoader.clearReferences(WebappClassLoader.java:1948)
    at org.apache.catalina.loader.WebappClassLoader.stop(WebappClassLoader.java:1860)
    at org.apache.catalina.loader.WebappLoader.stopInternal(WebappLoader.java:659)
    at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:216)
    at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5032)
    at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:216)
    at org.apache.catalina.core.ContainerBase.removeChild(ContainerBase.java:952)
    at org.apache.catalina.startup.HostConfig.checkResources(HostConfig.java:1199)
    at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1360)
    at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:290)
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
    at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:89)
    at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1228)
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1384)
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1394)
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1373)
    at java.lang.Thread.run(Thread.java:619)
Jul 10, 2011 4:29:05 PM org.apache.catalina.util.LifecycleBase destroy
INFO: The destroy() method was called on component [StandardContext[/manager]] after destroy() had already been called. The second call will be ignored.
Jul 10, 2011 4:29:05 PM org.apache.catalina.startup.HostConfig checkResources
INFO: Undeploying context []
Jul 10, 2011 4:29:05 PM org.apache.catalina.session.StandardManager doUnload

Затем, наконец, TOmcat перестает отвечать этими ошибками:

Jul 10, 2011 5:07:44 PM org.apache.catalina.util.LifecycleBase destroy
INFO: The destroy() method was called on component [StandardContext[/host-manager]] after destroy() had already been called. The second call will be ignored.
Jul 10, 2011 6:31:44 PM org.apache.catalina.startup.HostConfig deployDescriptor
INFO: Deploying configuration descriptor rcbp.xml from /home/infocomm/tomcat/conf/Catalina/localhost
Exception in thread "ContainerBackgroundProcessor[StandardEngine[Catalina]]" java.lang.OutOfMemoryError: PermGen space

Буду признателен за любую помощь.Это происходит только после выхода из удаленной оболочки, с которой я запустил приложение Tomcat.

1 Ответ

2 голосов
/ 10 июля 2011

делает tomcat (при работе с определенной учетной записью пользователя) доступ к этому файлу, у него должно быть достаточно прав для создания, обновления и удаления файла.

/ дома / ИнфоКомм / кот / работа / Catalina / локальный / менеджер / SESSIONS.ser

в Windows это очень редко для этого сценария, если вы не запустили tomcat как непривилегированный пользователь.

...