1. 程式人生 > >Tomcat 啟動兩次的問題(ServletContextListener的contextInitialized被執行兩次的問題)

Tomcat 啟動兩次的問題(ServletContextListener的contextInitialized被執行兩次的問題)

問題:

    在啟動 tomcat5 時,控制檯視窗會打印出兩行“hello word”字串?

問題原因:

    因為hello應用本來就放在Tomat的預設webapp目錄下(tomcat在啟動時肯定會載入1次),然後又在server.xml中做了配置,為了達到訪問根就可以訪問hello應用(這樣tomcat就又載入1次);結果,Tomcat就會載入兩次。

解決辦法:

    辦法1、不要將 hello 應用放在Tomat的預設webapp目錄下,把它移出去,然後在server.xml中修改docBase的值為hello應用在新位置的絕對路徑就可以了;

    辦法2、刪除掉server.xml中 Context 的手動配置,這樣就不會載入兩次,因為hello應用在webapp下,所以在訪問時,就只能是: 這樣來訪問了。