我正在开发一个基于 Web 的 Java 应用程序,并且(显然)在开发过程中必须在本地运行它。我已经找到了 Tomcat 文档并且有一个合适的 context.xml 文件,/etc/tomcat6/Catalina/localhost/
但每隔一段时间,Tomcat 就会决定删除它!这意味着我必须把它放回去并重新启动Tomcat。
它为什么这样做?我已经搜索了有关它的 Tomcat 文档,但并不明智。
(哦,是的:它实际上并没有被调用,context.xml
但owners.xml
因为这是该应用程序的 HTTP 路径前缀。)
更新
我现在已经看到 Tomcat在 Tomcat 运行时删除文件。我想我需要提交一个错误...
Jan*_*yka 18
快速总结:在几种情况下(例如更改 war 文件、删除 webapp 或用新内容替换它),tomcat 将取消部署上下文,包括删除上下文文件。
详细信息:tomcat 是否执行 autoDeployment(意味着检查 .xml 描述符中的更改以及检查 webapp 目录中的更改)由以下因素驱动:
server.xml 位于 $CATALINA_HOME/conf/server.xml 部分:
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
您还可以在重载值的上下文文件中设置此属性
在autoDeploy=true 的情况下引用文档可能会导致删除您的上下文文件:
详尽的细节:http : //tomcat.apache.org/tomcat-6.0-doc/config/host.html#Automatic%20Application%20Deployment
小智 6
如果您不想要 autoDeploy功能,例如在生产环境中,您可以考虑 conf/Catalina/localhost 上下文文件中的以下属性:
autoDeploy="false" 可能无法单独工作,因为 application context.xml(在 META-INF 中)可以覆盖 autoDeploy 的 server.xml 设置。
deployXML 属性文档属性文档值得一读(§ 标准实现)。
详尽的 autoDeploy 用户案例,当上下文被移除时:即应用程序未部署,可以在此处找到记录的用户案例。
归档时间: |
|
查看次数: |
29765 次 |
最近记录: |