weblogic获取应用目录路径为null的解决办法

来源:互联网 发布:tvbox网络机刷机 编辑:程序博客网 时间:2024/06/11 07:11

1 背景说明

在项目开发过程中,本地开发用的windows+tomcat,到了生产中,就成了linux+weblogic。部署工程后,应用报错,显示获取应用目录返回为null。

2 解决方法

/*     * 获取项目的根目录     * 因为tomcat和weblogic获取的根目录不一致,所以需要此方法     */    private String getWebRootUrl(HttpServletRequest request){        String fileDirPath = request.getSession().getServletContext().getRealPath("/");        if(fileDirPath == null){            //如果返回为空,则表示服务器为weblogic,则需要使用另外的方法            try{                return request.getSession().getServletContext().getResource("/").getFile();            }catch(MalformedURLException e){                LogUtil.MSG.info("获取项目的根目录出错!", e);                throw new BizException("获取项目的根目录出错!");            }        }else{            return fileDirPath;        }    }

tomcat下输出
E:\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\bqsims_client\

weblogic下输出
/home/weblogic/Oracle/Middleware/Oracle_Home/user_projects/domains/domain7101/servers/AdminServer7101/tmp/_WL_user/bqsims_client/i3sdnr/war/

1 0
原创粉丝点击