Struts2中的路径问题是根据action的路径而不是jsp的路径来确定,所以尽量不要使用相对路径.
虽然可以用redirect方式解决,但redirect方式并非必要。
解决办法非常简单,统一使用绝对路径。(在jsp中用request.getContextRoot方式来拿到webapp的路径)或者使用myeclipse经常用的,指定basepath。
1、struts.xml
<struts>
<constant name="struts.devMode" value="true" />
<package name="path" namespace="/path" extends="struts-default">
<action name="path" class="com.wxh.action.PathAction">
<result name="path">/path.jsp</result>
</action>
</package>
</struts>
2、PathAction.java
package com.wxh.action;
public class PathAction {
public String execute(){
return "path";
}
}
3、index.jsp
<body>
<a href="path/path.action">路径问题说明</a>
</body>
4、path.jsp
<body>
<a href="../index.jsp">index.jsp</a>
</body>