我使用clojure + ring在Glassfish 3上运行构建Web应用程序。 为了正确初始化log4j,我需要找到WEB-INF文件夹的正确绝对路径。
是否可以在app-server /
上运行的Web应用程序中确定WEB-INF文件夹的绝对路径答案 0 :(得分:0)
您可以使用ServletContext.getRealPath()方法。
例如,将以下内容插入XHTML:
Path: #{request.servletContext.getRealPath("/")}
这将显示XHTML文件的完整路径,例如:当您将其插入名为index.xhtml
的文件时,它会显示包含此index.xhtml
的目录。
因为大多数情况下,XHTML文件没有放在WEB-INF
文件夹中,您可能需要按以下方式连接字符串:
#{request.servletContext.getRealPath("/")}WEB-INF
您也可以在处理程序中执行此操作:
HttpServletRequest request = (HttpServletRequest)FacesContext.getCurrentInstance().getExternalContext().getRequest();
System.out.println("Path: " + request.getServletContext().getRealPath("/"));
另见: