在用request.getRequestDispatcher("").forward(request, response);方式進行頁面間的跳轉時,由於采用的是請求轉發方式,訪問地址沒有改變,這時如果跳轉到jsp頁面,如果jsp中有外界引入的文件,比如css或者js時,若采用相對路徑引包,無法顯示,因為此時的頁面地址不再是jsp頁面的地址,而是請求轉發之前的地址,相對路徑是相對jsp頁面的,要解決這個問題,需要用絕對路徑在jsp頁面中進行引包。
可以在jsp頁面中用jstl和el表達式<c:set var="ctxPath" value="${pageContext.request.contextPath }" scope="page"></c:set>獲取工程名賦值給變量ctxPath,然后通過工程名采取絕對路徑的方式引入外面的包。