您的位置:首页 > 移动开发

java.lang.IllegalStateException: Web app root system property already set to different value: 'webap

2015-12-29 13:17 507 查看
由于系统架构需要同时启动多个web项目,开发时每个项目用不同的tomcat启动,没有任何问题,等到发布时放在同一个tomcat中时出现异常信息,分析原因如下:

webAppRootKey是在java web项目的web.xml配置文件中表示项目的唯一标示,在Eclipse调试Web项目时,项目的路径是一个临时路径,不在真正的路径下,可以通过log4j日志的方式打印出属性值,来看看临时项目路径在哪里,可以用System.getProperty("web.sample.root");如果web.xm 内没有设置webAppRootKey项,是为默认设置,那么webAppRootKey就是缺省的"webapp.root"。

 

 

 

 

 

解决办法:    两个web应用中定义了相同的webAppRootKey或者都没有定义,则现在就需要为每个web都定义一个webAppRootKey。

 

         ### app1:

<context-param>

    <param-name>webAppRootKey</param-name>

    <param-value>app1.root</param-value>

</context-param>

 

### app2:

<context-param>

    <param-name>webAppRootKey</param-name>

    <param-value>app2.root</param-value>

</context-param>

 

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  web.xml