struts2中路径的设置
在struts2中最好使用绝对路径。
MyEclipse中常用的设置路径的方法:
<%
String path = request.getContextPath();
//则path的值是:应用的路径即http://localhost:9000/Struts2_0400_Path/
String basePath = request.getScheme()+"://"+request
.getServerName ()+":"+request.getServerPort()+path+"/";
%>
request.getScheme()值是:http
request.getServerName()的值是:localhost
request.getServerPort()的值是:9000
path的值是: struts2_0400_Path
在使用的时候,只需在path后面加上namespace/*.action
例如:
引用
<a href="<%=path%>/index.jsp">index.jsp</a>
另外一种方式:
在html的head中加入如下代码
<base href=”<%=basePath%>”/>
这里的意思就是说这个jsp页面里所有的<a href/>连接都会在前面加上basePath,如 <a href=”test.jsp”>,则实际的是<a href=” http://localhost:9000/struts2_0400_Path/test.jsp”/>;
但是如果说是
引用
<a href=”/index.jsp”>index.jsp</a>
这样访问的话,那么访问的将是tomcat的根目录,而不是应用项目的根目录)
即http://localhost:9000/index.jsp
因为在jsp中,"/"代表的是站点的跟路劲,而不是应用的根路径。