2011-02-24 108 views
3

我有一個問題,經過大量的閱讀和研究,看起來像tomcat正在運行本身的另一個實例,從而服務我更新的應用程序的舊版本(或以某種方式緩存了我的webapp的舊版本, ) 我在eclipse上的應用程序在windows計算機上工作,並將其作爲ROOT應用程序部署在Linux服務器上(將war文件重命名爲ROOT.war)。 我想知道的是,如果有一種方法可以通過讓tomcat記錄服務舊版應用程序的servlet的上下文根的輸出來找到tomcat正在提供的舊版本。 正如它所表明的那樣,更新的應用程序創建的任何文件都會在正確的目錄中創建,但由於應用程序實例不同,它們在創建後不久就無法訪問這些文件。 任何幫助/提示將受到歡迎有沒有辦法在tomcat中獲取上下文根的絕對路徑?

回答

3

要回答標題中的問題,讓你的代碼基本上做到以下幾點:

System.out.println(getServletContext().getRealPath("/")); 

爲了解決這個問題描述的問題,關閉Tomcat和刪除一切其/work目錄中,刪除/webapps中的展開WAR並刪除目錄的/Catalina子目錄(如果有),然後重新啓動。

+0

謝謝..會回來給你結果 – 2011-02-24 17:21:12

+0

謝謝。這解決了我的問題 – 2011-02-25 02:40:41

+0

不客氣。 – BalusC 2011-02-25 02:42:05

相關問題