写在前面
这个问题之前遇到一次, 时间久就忘了, 还是好记性不如烂笔头, 记一下吧.Windows下部署到Tomcat和Linux下部署到Weblogic的获取项目名写法.
关键代码
java代码
webName = request.getSession().getServletContext().getContextPath(); log.error("================Weblogic下带斜杠的web项目名称为:" + webName); webName = webName.substring(1, webName.length()); log.error("================Weblogic下不带斜杠的web项目名称为:" + webName); String rootPath = this.getClass().getResource("/").getPath().replaceAll("^\/", ""); log.error("================Weblogic下rootPath为:" + rootPath);
控制台输出(这是Windows系统部署到Tomcat下的输出内容, Weblogic日志不方便贴了)
控制台 [2019-10-09 09:05:23] [ERROR] [org.jeecgframework.web.system.controller.core.LoginController:896] ================Weblogic下带斜杠的web项目名称为:/jeecg [2019-10-09 09:05:23] [ERROR] [org.jeecgframework.web.system.controller.core.LoginController:899] ================Weblogic下不带斜杠的web项目名称为:jeecg [2019-10-09 09:05:23] [ERROR] [org.jeecgframework.web.system.controller.core.LoginController:903] ================Weblogic下rootPath为:H:/cqyyt/jeecg/target/jeecg/WEB-INF/classes/