2010-01-26 46 views
1

在Tomcat 5中,我將構建一個WAR文件並將其放置在我的測試服務器上。在此服務器上,CATALINA_HOME/conf/[EngineName]/[HostName]目錄中有一個my-app.xml文件,指向我的測試數據庫。完成測試後,我會將WAR文件發送給我的客戶IT部門,他們會將文件放入CATALINA_HOME/webapps目錄中。在他們的Tomcat實例中,他們有一個不同的my-app.xml文件指向生產數據庫。更新Tomcat 6.0.20中現有的webapp時出現的問題

最近我們升級到了Tomcat 6,當我們將WAR文件複製到webapps目錄時,它刪除了my-app.xml文件。刪除後,如果我將my-app.xml文件的備份複製到CATALINA_HOME/conf/[EngineName]/[HostName]目錄中,即使我從Tomcat Manager重新加載webapp,Tomcat也會忽略它。

我試着在WAR文件的META-INF目錄中添加context.xml文件。當Tomcat擴展WAR文件時,它將使用context.xml文件覆蓋my-app.xml文件。如果我然後將my-app.xml文件的備份複製回CATALINA_HOME/conf/[EngineName]/[HostName]目錄,則Tomcat將刪除WAR文件和展開的目錄。

我可以在WAR文件中包含適當的my-app.xml文件,但這意味着構建兩個WAR文件,一個是測試my-app.xml,另一個是生產my-app.xml。如果我將WAR文件或my-app.xml備份文件按特定順序複製到正確的目錄中,我也可以使其工作。由於多種原因,我不喜歡這些解決方案。

我在做什麼錯?爲什麼這不適用於新版本?我需要更改選項嗎?我需要改變我的過程嗎? (注意:客戶的IT部門不希望停止並啓動Tomcat來重新部署新的WAR文件。)

謝謝!

回答

相關問題