war包发布找不见路径 weblogic getResource 与getRealPath
生活随笔
收集整理的這篇文章主要介紹了
war包发布找不见路径 weblogic getResource 与getRealPath
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在部署項目時出現了找不到路徑的問題。到網上搜了下,做個總結。
首先分析下這次錯誤(找不見路徑)的原因:
我獲取路徑的代碼:
request.getSession().getServletContext().getRealPath("/")
經驗證,此方法獲取的路徑為絕對路徑。在發布項目時,把項目打成war發布到weblogic上,出現了找不見路徑的問題。
解決方法:
使用以下代碼獲取路徑:
request.getSession().getServletContext().getRealPath("/")
此方法獲取的路徑為相對路徑。相對路徑就很好解決了這個問題,不管是以war的形式發布,還是部署在liunx或unix或者其他更復雜的環境中,都可以很好的解決這個問題。
?
上面寫的比較狗血,我給大家提供一個我實踐過的一個方法(在tomcat和weblogic下可用) servlet中使用: String root_path = this.getClass().getResource("").getPath(); log.info("1:"+root_path); root_path = root_path.substring(0, root_path.indexOf("WEB-INF")-1); log.info("2:"+root_path);?
總結
以上是生活随笔為你收集整理的war包发布找不见路径 weblogic getResource 与getRealPath的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: weblogic获取文件的路径问题
- 下一篇: 类加载-概述