我正在使用Tomcat 7,並且想要在war文件本身中設置war文件的上下文根,並讓Tomcat自動部署並獲取此路徑。 我以爲我找到了通過將context.xml放入包含的war的META-INF目錄中來實現它的方法。如何在Tomcat的META-INF/context.xml中指定路徑
<?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的路徑工作?除非在指定的路徑
感謝 大衛
這也解決了同樣的問題,我也謝謝你。但是,我相信這是一個忽略路徑屬性的Tomcat缺陷。文件甚至說的是相反的。更糟糕的是,docBase似乎被Tomcat 7.0.22忽略,所以唯一的辦法就是將這些愚蠢的哈希名稱用於context.xml和.war。 #Sigh ... – zakmck 2012-12-05 14:13:40
這不愚蠢。出於顯而易見的原因,您不能在文件名中使用/(或可能是\)字符。 應刪除IMO屬性的路徑屬性。它讓人困惑太多。 – Pidster 2012-12-12 18:27:32
我沒有反對散列,我認爲這是不好的,我不得不通過文件名來確定上下文路徑,而不是參數path和docBase。例如,在實踐中,我不能部署任何名爲myapp-v1.2.3beta.war的文件。好的,我可以設置一個別名,但另一種方式會更好。 – zakmck 2012-12-12 20:32:27