1. 程式人生 > >weblogic與tomcat對welcome-file處理的差異

weblogic與tomcat對welcome-file處理的差異

今天碰到一情況,一模一樣的工程部署到tomcat中和weblogic中,訪問工程的根目錄時,瀏覽器的反應完全不同:tomcat中的工程,瀏覽器會跳轉到web.xml檔案配置的登入頁面,而weblogic的中工程,瀏覽器會一直提示跳轉登入頁面,就是不跳轉,各種百度,最後找到問題原因:

如果web.xml配置的都存在,比如

<welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
</welcome-file-list>

weblogic的處理:
會現在url上加上index.jsp。再到filter,也就是說,如果原始訪問路徑為

http://domain:port,則weblogic會把url變成http://domain:port/index.jsp再到filter

所以在web工程中的filter在對請求的url字串進行各種判斷的時候,一定要考慮到這兩種情況。瀏覽器同時輸入工程根目錄的url,filter中通過httpServletRequest.getContextPath() 獲取的url會不同。