WebLogic下WAR方式部署獲取文件路徑問題

在WebLogic下部署一個應用時,採用了WAR包方式,代碼使用了SPRING的ServletContextResource類,運行拋出空指針異常。後改用request.getRealPath("/"),結果仍爲null。原來使用WAR包方式無法支持ServletContext類的getRealPath()方法。解決方案:

使用ServletContext的getResource或getResourceAsStream獲取WEB應用的文件路徑

最後採用如下方法獲取WEB應用目錄路徑:

String tmpFolderPath = request.getSession().getServletContext().getResource("/images/img.png").getFile();  

注意this.getServletContext()可以在Tomcat下使用,但無法在WebLogic下使用,WebLogic下使用如下方法替代:

request.getSession().getServletContext()  

或者

request.getServletConfig().getServletContext().

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章