在struts2中的路徑問(wèn)題是根據(jù)Action的路徑而不是JSP的路徑確定的,所以盡量不要使用相對(duì)路徑,使用相對(duì)路徑會(huì)讓路徑問(wèn)題變得很繁瑣很麻煩,有的時(shí)候一個(gè)細(xì)微的變動(dòng)會(huì)導(dǎo)致你需要大的改動(dòng)。
解決方法其實(shí)也很簡(jiǎn)單:即統(tǒng)一使用絕對(duì)路徑。
在jsp中可以通過(guò)request.getContextRoot的方式獲得webapp的絕對(duì)路徑:
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
以上方式很明確,path字符串獲得是webapp的路徑,然后basePath獲得的是整個(gè)項(xiàng)目的根路徑(注:已經(jīng)含有了最后的“/”)
在使用時(shí)只需調(diào)用basePath即可(以跳轉(zhuǎn)到index為說(shuō)明):
其中<a></a>代表的是超鏈接,這樣就可以跳轉(zhuǎn)到xxxxx/index了(前提是你的namespace和Action的設(shè)置要配置好)。
以上就是Struts2中路徑問(wèn)題的全部?jī)?nèi)容,希望能給大家一個(gè)參考,也希望大家多多支持服務(wù)器之家。