一尘不染

如何在META-INF / context.xml中为Tomcat指定路径

tomcat

我正在使用Tomcat
7,并且想在war文件本身中设置war文件的上下文根,并让Tomcat自动部署并选择此路径。我以为我找到了方法,可以通过将context.xml放入其中包含的战争的META-
INF目录中。

<?xml version="1.0" encoding="UTF-8"?>
<Context path="/somepath/myapp"/>

但这似乎不起作用,我认为它是由http://tomcat.apache.org/tomcat-7.0-doc/api/org/apache/catalina/startup/SetContextPropertiesRule.html加载的,它声明除了路径!

我知道我可以将战争命名为somepath#myapp.war,它将被选中,但我也部署到对这样的名称不满意的weblogic中。

我可以使用一些设置来使上面的context.xml中的路径起作用吗?

谢谢大卫


阅读 456

收藏
2020-06-16

共1个答案

一尘不染

语境path除非在指定的路径属性将被忽略的硬编码Contextserver.xml,这是强烈反对,并没有考虑多路径。

war文件的名称或Context xml文件的名称将tomcat/conf/Catalina/hostname成为path已部署应用程序的名称。

就您而言,上述两种方法中的后一种是解决方案,只需确保将.war文件放在appBase主机指定的文件之外,否则将部署该应用两次。

在: conf/Catalina/localhost/myapp#path.xml

<?xml version="1.0"?>
<Context docBase="/some/path/to/myapp.war">
</Context>
2020-06-16