tomcat部署多个项目webAppRootKey冲突
2015-08-24 15:52
441 查看
在tomcat下部署了2个项目,但是启动之后项目不能正常访问。
在catalina.ou中找到log
说明项目启动失败了。
再看localhost.2015-08-24.txt,找到了报错的日志:
就是说webAppRootKey配置冲突。
但是查看了两个项目的web.xml文件,并没有配置这个参数。
最后看别人的文章才明白,原来如果不定义webAppRootKey参数,那么webAppRootKey就是缺省的"webapp.root"。但最好设置,以免项目之间的名称冲突。
定义以后,在Web Container启动时将把ROOT的绝对路径写到系统变量里。
不过貌似现在都是一个tomcat 下部署一个项目,所以这种情况出现的机会也不是很多。
参考文章:http://blog.sina.com.cn/s/blog_6d002146010125ws.html
在catalina.ou中找到log
SEVERE: Context [/getfood] startup failed due to previous errors
说明项目启动失败了。
再看localhost.2015-08-24.txt,找到了报错的日志:
java.lang.IllegalStateException: Web app root system property already set to different value: 'webapp.root' = [/root/apache-tomcat-7.0.61/webapps/wechat/] instead of [/root/apache-tomcat-7.0.61/webapps/getfood/] - Choose unique values for the 'webAppRootKey' context-param in your web.xml files! at org.springframework.web.util.WebUtils.setWebAppRootSystemProperty(WebUtils.java:132) at org.springframework.web.util.Log4jWebConfigurer.initLogging(Log4jWebConfigurer.java:118) at org.springframework.web.util.Log4jConfigListener.contextInitialized(Log4jConfigListener.java:47) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:5016) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5528) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:652) at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1090) at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1900) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util.concurrent.FutureTask.run(FutureTask.java:262) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745)
就是说webAppRootKey配置冲突。
但是查看了两个项目的web.xml文件,并没有配置这个参数。
最后看别人的文章才明白,原来如果不定义webAppRootKey参数,那么webAppRootKey就是缺省的"webapp.root"。但最好设置,以免项目之间的名称冲突。
定义以后,在Web Container启动时将把ROOT的绝对路径写到系统变量里。
不过貌似现在都是一个tomcat 下部署一个项目,所以这种情况出现的机会也不是很多。
参考文章:http://blog.sina.com.cn/s/blog_6d002146010125ws.html
相关文章推荐
- tomcat目录文件的作用和处理过程
- 内存溢出之Tomcat内存配置
- tomcat部署的四种方法
- tomcat的work目录的作用
- tomcat问题解决。。
- Nginx + Tomcat 实现动静分离
- tomcat无法连接,./shutdown.sh的时候报connect refuse
- tomcat内存不足
- TOMCAT注册成系统服务
- Tomcat 启动异常深度剖析
- Eclipse启动Tomcat错误:Several ports (8080, 8009) required by Tomcat v6.0 Server at localhost are already
- Linux下Tomcat的安装配置
- Linux下Tomcat的启动、关闭、杀死进程
- 在陌生Linux环境查看Tomcat服务的方法
- 一个Myeclipse同时配置多个Tomcat
- 如何在Eclipse配置Tomcat服务器
- tomcat安装目录下各文件夹
- Tomcat的Server.xml虚拟主机和虚拟目录的配置
- Tomcat与Web应用的配置
- tomcat_server.xml配置说明