Struts2 @ResultPath註釋示例
在Struts 2中, @ResultPath 註解用於控制Struts2找到存儲的結果或JSP頁面。默認情況下,它會找到結果頁在 「WEB-INF/content/」 文件夾。
不知道爲什麼在Struts2註解設置 「WEB-INF/content/」 作爲默認目錄, 但是大部分的應用並不將結果頁放入到 「WEB-INF/content/」 目錄. 可能 Struts2慣例也並不是一個標準的文件夾結構。 我一般是在 Struts 2 根路徑作爲默認的文件夾。
@ResultPath 示例
1. 默認結果路徑
在登錄動作類,設置 「/User」 作爲命名空間, 並重定向到 「pages/login.jsp」 頁面。
P.S 假設struts2example是上下文servlet名稱
@Namespace("/User")
@Result(name="success",location="pages/login.jsp")
public class LoginAction extends ActionSupport{
}
訪問它,如下:
http://localhost:8080/struts2example/User/login.action
Struts 2將從默認位置找到「login.jsp」結果頁面:
/struts2example/WEB-INF/content/User/pages/login.jsp
2. 定製結果路徑
如果JSP結果頁面存儲在其他位置,那麼可以使用 @ResultPath註釋設置改變它。
@Namespace("/User")
@ResultPath(value="/")
@Result(name="success",location="pages/login.jsp")
public class LoginAction extends ActionSupport{
}
再一次訪問:
http://localhost:8080/struts2example/User/login.action
現在Struts2將從不同的位置找到「login.jsp」結果頁面:
/Struts2Example/User/pages/login.jsp
全局@ResultPath
@ResultPath只適用於類級別。在全局範圍內應用它,可以在 struts.xml 文件中進行配置。
struts.xml