這幾天寫程式經常遇到路徑問題,在使用
servlet
的時候,使用的對映路徑,然後在
servlet
中跳轉的時候經常使用
..返回上一目錄很麻煩。在
struts
中同樣也會有這種問題,在我們使用
action
的時候經常會遇到。比如有如下的
struts.xml
檔案:
專案名/path/path
,這樣就會返回
/path.jsp
檔案給客戶端。位址列會變成
專案名/path/path.jsp
。如果這個
jsp檔案中有乙個連線:
index.jsp(index.jsp
在專案根目錄下,並且和
path.jsp
同目錄)
,這樣我們一點這個連線的時候就會報告錯誤。而位址列會變成
專案名/path/index.jsp
,伺服器找不到這樣目錄結構的檔案。但是在正常情況下,這樣是成功的。這就是跳轉問題,鏈結預設的是在相同目錄中去尋找,這裡的相同目錄指的是,位址列中的目錄結構。但是
struts
的跳轉一多就會搞不清楚了。所以這裡使用絕對路徑。
但是使用絕對路徑不能像「
/index.jsp
」這樣寫,這樣會跳轉到**的根目錄,而不是專案的根目錄。這裡介紹一下
myeclipse
中的預設設定方法。在
jsp的開頭加上:
<%
string path = request.getcontextpath();
string basepath =request.getscheme()+"://"+request.getservername()+":"+request.getserverport()+path+"/";
%>
在後面需要寫路徑的時候就可以使用「
<%=basepath %>index.jsp
」了,這樣就方便了許多。
還可以在網頁中使用
base
標籤:" />
這樣在後面需要寫路徑的時候就可以使用「
index.jsp
」了,這樣就更加方便。
希望寫到這裡說明白了,如果**錯了,還請指出
道聽途說Struts2之2 命名空間補充
上課的時候突然想起來了,早晨寫的丟了點東西,現在補充上。如果我們在寫程式的時候,省略了 namespace 預設的匹配所有的 action 如果有類似下面的寫法 default extends struts default hello hello.jsp 將匹配所有 action 為hello 的 ...
道聽途說Struts2之13 預設的Action
在我們的專案中,如果我們的請求的 action 不存在,一般的情況下會給我顯示 404錯誤,但是有時候我們感覺這個頁面不友好,所以我們可以讓它跳轉到另乙個頁面。這裡我們可以配置乙個預設的 action 當找不到匹配的 action 之後,就會執行這個預設的 action 下面看一下這個配置 unde...
struts2之資料驗證
兩種資料驗證框架是 1.通過重寫actionsupport類中的validate方法進行驗證 2.通過資料驗證框架進行驗證 通過validate方法進行資料驗證 下面先講一下進行資料驗證的action的執行流程 當client端傳送請求給server端時,首先將請求中的引數轉換action中的字段,...