From:Tony.J's Blog
1茶敏、資源文件只能放在WebContent下面,如 CSS,JS,image等.放在WEB-INF下引用不了.
2互艾、頁面放在WEB-INF目錄下面,這樣可以限制訪問,提高安全性.如JSP,html
3稍坯、只能用轉(zhuǎn)向方式來訪問WEB-INF目錄下的JSP,不用采用重定向的方式請求該目錄里面的任何資源.如圖:index.jsp >> main.jsp
4、WEB-INF目錄下文件訪問資源文件時,可以忽略WEB-INF這一層目錄.如main.jsp 要用css目錄里的一個css文件. <link rel="stylesheet" type="text/css" href="css/comm201005faa3.css" />這樣就行了,從客戶端的地址可以看出來 服務(wù)器轉(zhuǎn)向main.jsp就是在webroot下面.所以main.jsp和css目錄可以講是同一級目錄.
5延赌、WEB-INF/oa目錄下訪問images目錄.怎么辦呢.</body>還是這這樣.
6痹扇、WEB-INF目錄下的文件之間如何訪問呢.如在main.jsp用<a href="oa.do">測試OA的路徑</a>訪問 像main.jsp有10處鏈接到WEB-INF目錄下的其它頁面.那就得有10個轉(zhuǎn)向Action.這個可以用DispatchAction類加參數(shù)專門處理轉(zhuǎn)向工作. 注:轉(zhuǎn)向方式: forward 如struts-config文件中配置<forward name="success" path="/WEB-INF/main.jsp" /> 或 在Action中寫request.getRequestDispatcher("/WEB-INF/main.jsp").forward(request, response);都是服務(wù)器讀取了該頁面內(nèi)容,并發(fā)送到客戶端.客戶端的地址不變.內(nèi)容跳轉(zhuǎn)了
重定向方式: Redirect 如struts-config文件中配置<forward name="success" path="/WEB-INF/main.jsp" redirect="true"/>或在action中response.sendRedirect("/error.jsp");重定向的含義就是服務(wù)器把地址發(fā)給客戶端,讓客戶端去訪問.這種辦法顯然針對WEB-INF目錄是無用功.