【Tomcat】嚴重: Context [/grouponAdminWeb] startup failed due to previous errors

來源:互聯網
上載者:User

1 tomcat 6600啟動報錯
[root@localhost webapps]#     sh /usr/local/apache-tomcat-6.0.37_6600/bin/startup.sh 
Using CATALINA_BASE:   /usr/local/apache-tomcat-6.0.37_6600
Using CATALINA_HOME:   /usr/local/apache-tomcat-6.0.37_6600
Using CATALINA_TMPDIR: /usr/local/apache-tomcat-6.0.37_6600/temp
Using JRE_HOME:        /usr/java/jdk1.6.0_45
Using CLASSPATH:       /usr/local/apache-tomcat-6.0.37_6600/bin/bootstrap.jar
Using CATALINA_PID:    /var/tomcat/6600.pid
Existing PID file found during start.
Removing/clearing stale PID file.
看到/var/tomcat/6600.pid已經存在了,所以載入失敗。停止tomcat,然後檢查tomcat進程


2 刪除已經存在的6600.pid檔案
[root@localhost webapps]# ps -eaf|grep 6600
root     10446  4972  0 15:09 pts/2    00:00:00 grep 6600
[root@localhost webapps]# more /var/tomcat/6600.pid
10180
[root@localhost webapps]# 
[root@localhost webapps]# ll /var/tomcat/6600.pid
-rw-r--r-- 1 root root 6 05-03 15:07 /var/tomcat/6600.pid


[root@localhost webapps]# rm -rf /var/tomcat/6600.pid
[root@localhost webapps]# 


3 再重啟,還是報錯,查看錯誤記錄檔如下:
tail -n 1000 /usr/local/apache-tomcat-6.0.37_6600/logs/catalina.out
2014-5-3 15:18:29 org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
嚴重: The web application [/grouponAdminWeb] appears to have started a thread named [Thread-197] but has failed to stop it. This is very likely to create a memory leak.
2014-5-3 15:18:29 org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
嚴重: The web application [/grouponAdminWeb] appears to have started a thread named [Thread-198] but has failed to stop it. This is very likely to create a memory leak.
......
2014-5-3 15:15:41 org.apache.catalina.startup.HostConfig deployWAR
資訊: Deploying web application archive grouponAdminWeb.war
SLF4J: This version of SLF4J requires log4j version 1.2.12 or later. See also http://www.slf4j.org/codes.html#log4j_version
2014-5-3 15:15:44 org.apache.catalina.core.StandardContext start
嚴重: Error listenerStart
2014-5-3 15:15:44 org.apache.catalina.core.StandardContext start
嚴重: Context [/grouponAdminWeb] startup failed due to previous errors


從這裡可以看出grouponAdminWeb這個web應用在tomcat容器上面deploy失敗,為什麼失敗?


4 分析為什麼會deploy應用失敗?
找這個應用的設計人員,經過同事提醒,去看同一目錄的localhost.2014-05-03.log檔案
tail -n 1000 /usr/local/apache-tomcat-6.0.37_6600/logs/localhost.2014-05-03.log
有如下錯誤提示:
2014-5-3 15:15:41 org.apache.catalina.core.StandardContext listenerStart
嚴重: Exception sending context initialized event to listener instance of class org.springframework.web.util.Log4jConfigListener
java.lang.IllegalStateException: Web app root system property already set to different value: 'GrouponWeb.root' = [/usr/local/apache-tomcat-6.0.37_6600/webapps/grouponWeb/] instead of [/usr/local/apache-tomcat-6.0.37_6600/webapps/grouponAdminWeb/] - Choose unique values for the 'webAppRootKey' context-param in your web.xml files!
at org.springframework.web.util.WebUtils.setWebAppRootSystemProperty(WebUtils.java:148)
at org.springframework.web.util.Log4jWebConfigurer.initLogging(Log4jWebConfigurer.java:117)
at org.springframework.web.util.Log4jConfigListener.contextInitialized(Log4jConfigListener.java:45)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4206)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4705)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:799)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:779)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:601)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:943)
at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:778)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:504)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1317)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:324)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1065)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:840)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1057)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)
at org.apache.catalina.core.StandardService.start(StandardService.java:525)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:754)
at org.apache.catalina.startup.Catalina.start(Catalina.java:595)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
2014-5-3 15:15:41 org.apache.catalina.core.ApplicationContext log
資訊: Initializing Spring root WebApplicationContext


5  看到錯誤資訊,是設定檔有誤,去修改WEB-INF下的web.xml
vim  /usr/local/apache-tomcat-6.0.37_6600/webapps/grouponAdminWeb/WEB-INF/web.xml
將 GrouponWeb.root 的key值由GrouponWeb修改成GrouponAdminWeb,如下所示:

......<context-param>        <param-name>webAppRootKey</param-name>        <param-value>GrouponAdminWeb.root</param-value>    </context-param>......

之後重啟tomcat或者,重新載入GrouponAdminWeb應用,就OK了。




6 查看最新tomcat開機記錄如下
[root@localhost WEB-INF]# tail -n 200 /usr/local/apache-tomcat-6.0.37_6600/logs/catalina.out
資訊: Initializing Coyote HTTP/1.1 on http-6600
2014-5-3 15:18:53 org.apache.catalina.startup.Catalina load
資訊: Initialization processed in 472 ms
2014-5-3 15:18:53 org.apache.catalina.core.StandardService start
資訊: Starting service Catalina
2014-5-3 15:18:53 org.apache.catalina.core.StandardEngine start
資訊: Starting Servlet Engine: Apache Tomcat/6.0.37
2014-5-3 15:18:53 org.apache.catalina.startup.HostConfig deployDescriptor
資訊: Deploying configuration descriptor manager.xml
2014-5-3 15:18:53 org.apache.catalina.startup.HostConfig deployWAR
資訊: Deploying web application archive grouponWeb.war
SLF4J: This version of SLF4J requires log4j version 1.2.12 or later. See also http://www.slf4j.org/codes.html#log4j_version
============
2014-5-3 15:18:58 org.apache.catalina.startup.HostConfig deployWAR
資訊: Deploying web application archive grouponAdminWeb.war
SLF4J: This version of SLF4J requires log4j version 1.2.12 or later. See also http://www.slf4j.org/codes.html#log4j_version
============
2014-5-3 15:19:02 org.apache.catalina.startup.HostConfig deployWAR
資訊: Deploying web application archive grouponService.war
2014-5-3 15:19:04 org.apache.catalina.startup.HostConfig deployDirectory
資訊: Deploying web application directory ROOT
2014-5-3 15:19:04 org.apache.coyote.http11.Http11Protocol start
資訊: Starting Coyote HTTP/1.1 on http-6600
2014-5-3 15:19:04 org.apache.jk.common.ChannelSocket init
資訊: JK: ajp13 listening on /0.0.0.0:6609
2014-5-3 15:19:04 org.apache.jk.server.JkMain start
資訊: Jk running ID=0 time=0/13  config=null
2014-5-3 15:19:04 org.apache.catalina.startup.Catalina start
資訊: Server startup in 10955 ms

總結:tomcat容器的web應用載入報錯,除了要去看catalina.log日誌之外,還要去看localhost.2014-05-03.log日誌資訊。


相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.