`
lijun87
  • 浏览: 264239 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

tomcat 发布多个项目时抛的webAppRootKey错误

阅读更多
在tomcat的目录conf\Catalina\localhost下,可以增加xml文件,来指向file系统中任意一处作为网站系统的子根目录,例如:
atcs.xml文件:

<!--

    Context configuration file for the Tomcat Host Manager Web App

    $Id: host-manager.xml 303743 2005-03-11 22:39:26Z remm $

-->


<Context path="/atcs" docBase="D:\WorkSpace\Huadu_Atcs3\WebContent"
privileged="true" antiResourceLocking="false" antiJARLocking="false">
</Context>

其中docBase指向站点的根目录,path与文件名相同(在此为atcs),这个path最好也要与docBase下的WEB-INF下的web.xml里面的  
  <context-param>
    <param-name>webAppRootKey</param-name>
    <param-value>atcs.root</param-value>
  </context-param>
paraam-value相同。
三者相同的情况下,才可以正确的访问网站(访问方式:http://localhost:8080/atcs)这样就作为localhost的一个子站点可以运行了。

常见错误:多个工程目录下的web.xml文件的<param-value>atcs.root</param-value>相同,就算在tomcat的conf下配置不同的名,例如配置atcs2.xml指向另外一个工程目录,但是恰巧那个工程下的web.xml里面也配置相同的webAppRootKey,那么将会出现其中一个工程不能够访问的问题。
网页出现经典的The requested resource (/atcs/) is not available错误!

问题发现方法:在myEclipse下配置log4j,之后会将一些不会报出来的错误亦会报出来,根据信息就可以发现是相同的webAppRootKey覆盖问题。在此我的log4j的报错信息:
Web app root system property already set to different value: 'atcs.root' = [D:\workspace2\Huadu_Atcs3\WebContent\] instead of [D:\WorkSpace\Huadu_Atcs3\WebContent\] - Choose unique values for the 'webAppRootKey' context-param in your web.xml files!

 

当Tomcat启动时抛出webAppRootKey错误时,可启动失败的项目中加入以下参数即可:

 

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

 

用于设置项目根目录键,重新启动即可。

 

分享到:
评论
2 楼 tuo_bing 2011-03-04  
   请问 ,如果 Tomcat的配置为 :
<Context path="/" docBase="D:\WorkSpace\Huadu_Atcs3\WebContent" 
      privileged=true" antiResourceLocking="false" antiJARLocking="false"> 
</Context> 

该如何配置 ?
1 楼 javaoflife 2010-12-16  
非常感谢,被这个问题搞定焦头烂额。呵呵!

相关推荐

    关于tomcat部署多系统仅部分系统正常说明及解决办法

    2、多个项目一起部署仅部分系统可以使用。 解决办法:检查每个系统的web.xml配置文件,文件位置: Tomcat服务器下../webapps/项目名称/WEB-INF/web.xml。 【webAppRootKey】与其他项目下的配置值决不可相同!。 ...

    springboot项目

    一个简单的spring+springboot+springdatajpa的入门项目

    基于MyEclipse搭建maven+springmvc整合图文教程(含源码0

    1. compile,缺省值,适用于所有阶段,会随着项目一起发布。 2. provided,类似compile,期望JDK、容器或使用者会提供这个依赖。如servlet.jar。 3. runtime,只在运行时使用,如JDBC驱动,适用运行和测试阶段。 ...

    波士顿房价数据集Boston House Price

    波士顿房价数据集Boston House Price 全网最便宜

    FPGA实现UDP协议(包括ARP、ICMP)

    三种实现FPGA实现UDP协议的代码工程(包括ARP、ICMP),包含使用设计文档。 第一种,米联客的DCP封装包 第二种,正点原子的源码工程 第三种,基于正点原子的赛灵思MAC核的代码工程。

    Red-Hat-Enterprise-Linux-7-RPM-Packaging-Guide-en-US

    Red_Hat_Enterprise_Linux-7-RPM_Packaging_Guide-en-US

    Matlab 三维人脸识别系统 V 4.3.zip

    Matlab 三维人脸识别系统 V 4.3.zip

    信捷XD PLC MODBUS控制阀岛通信 案例程序

    信捷XD PLC MODBUS控制阀岛通信 案例程序

    常用进制转换器16进制10进制2进制转换计算器..exe

    大家好呀!今天来介绍一款常用进制转换器,也就是 16 进制、10 进制、2 进制转换计算器。有了它,你可以轻松实现不同进制之间的快速转换。无论是将 16 进制转换为 10 进制或 2 进制,还是从其他进制转换过来,它都能准确而高效地完成。无论是在计算机编程、数字电路等领域,还是日常对进制转换有需求的时候,它都能成为你的得力小助手,让进制转换不再麻烦,快来试试吧!

    微信小程序:智能排队取号系统 - 地图组件集成

    这款微信小程序是一个创新的智能排队取号系统,专为提高服务行业的效率和顾客满意度而设计。它通过集成地图组件,为用户提供了一个直观、易用的排队和取号解决方案。用户可以在小程序中查看各个服务点的位置,实时了解排队情况,并进行远程取号。 小程序的主要功能包括: 实时排队信息:用户可以实时查看各个服务点的排队情况,包括当前排队人数、预计等待时间等。 远程取号:用户无需到现场即可通过小程序远程取号,节省了排队等待的时间。 地图导航:集成的地图组件可以帮助用户快速找到服务点的具体位置,并提供导航服务。 取号管理:用户可以在小程序中管理自己的取号信息,包括查看、取消等操作。 此外,小程序还支持多种场景,如餐饮、医疗、银行、政府服务等,适用于各种需要排队取号的服务场合。它不仅提高了服务效率,减少了顾客的等待时间,还为商家提供了客流管理和数据分析的工具。

    520节日520节日表白神器.zip

    520节日520节日表白神器520节日520节日表白神器520节日520节日表白神器520节日520节日表白神器

    JAVA语言考试系统的设计与实现(LW+源代码+文献综述+外文翻译+开题报告).zip

    JAVA语言考试系统的设计与实现(LW+源代码+文献综述+外文翻译+开题报告)

    相移法偏移MATLAB代码.zip

    相移法偏移MATLAB代码.zip

    directx修复工具directx修复工具directx修复工具.txt

    directx修复工具directx修复工具directx修复工具directx修复工具

    基于matlab的三维地球建模,需联网.zip

    基于matlab的三维地球建模,需联网.zip

    字符串处理-I.MX6U嵌入式Linux C应用编程学习笔记基于正点原子阿尔法开发板

    字符串处理-I.MX6U嵌入式Linux C应用编程学习笔记基于正点原子阿尔法开发板

    蓝桥杯-基础题C++: 其压缩包中为C++ code

    参加比赛的一些心得:感觉把比赛得那一门语言基础学会,输入输出([我写的python输入输出](https://blog.csdn.net/qq_41392228/article/details/123614298)),([C++的STL](https://blog.csdn.net/qq_41392228/article/details/124825895)),熟练里面的数据结构,如数组,map等,==主要还是基础==。熟悉了后,可以在刷一下基础题,巩固哈学了的基础知识。把基础学好了,拿个奖是没问题的,正常发挥即可。想那个好的名词,就要看看相关的算法了,主要就是暴力的+优化,BFS,DFS,比较难的就是动态规划,得找转换方程。 python版本的可见:https://blog.csdn.net/qq_41392228/article/details/123616441

    基于 Rust + eBPF 丢弃 GFW DNS 污染包

    基于 Rust + eBPF 丢弃 GFW DNS 污染包 GFW 污染 DNS 的方式为抢答,我们只需要丢弃投毒响应即可获得正确的解析结果。通过 eBPF 我们可以在内核中插入代码,相比在用户态启动代理,这样可以获得更好的性能。 要丢弃投毒响应,重点是找到它们的特征。 以 twitter.com 为例,当向 8.8.8.8 请求 twitter.com 的 A 记录时,正常的响应会返回 2 条结果(1Q2A);而 GFW 只会返回 1 条,但是使用了 2 次抢答。2 次抢答包其中一个 IP Identification = 0x0000,另一个 IP Flags = 0x40(Don't fragment);而正常的响应 IPID 不会是 0 并且 IP Flags = 0。 我们只要 Drop 掉符合对应特征的包即可。这时我们可以验证,twitter.com 可以正确解析(fb 等非 google 服务也正常)。

    分数阶傅里叶变换数字水印matlab程序.zip

    分数阶傅里叶变换数字水印matlab程序.zip

Global site tag (gtag.js) - Google Analytics