1) 採用絕對路徑,但爲了解決不同部署方式的差別,在所有非 struts 標籤的路徑前加 ${pageContext.request.contextPath} ,如原路徑爲:
”/images/title.gif” ,改爲
“${pageContext.request.contextPath}/images/title.gif” 。
代碼 ” ${pageContext.request.contextPath}” 的作用是取出部署的應用程序名,這樣不管如何部署,所用路徑都是正確的。
缺點:
操作不便,其他工具無法正確解釋 ${pageContext.request.contextPath}
2) 採用相對路徑,在每個 JSP 文件中加入 base 標籤,如:
<base href="http://${header['host']}${pageContext.request.contextPath}/" />
這樣所有的路徑都可以使用相對路徑。
缺點:
對於被包含的文件依然無效。
注意:
JS文件可能有問題,最好把
<base href="http://${header['host']}${pageContext.request.contextPath}/" />
放在js文件加載之後