【问题标题】:find correct ablsolute path to app folder clojure/ring找到应用程序文件夹 clojure/ring 的正确绝对路径
【发布时间】:2014-12-05 07:32:39
【问题描述】:

我使用 clojure+ring 构建在 Glassfish 3 上运行的 Web 应用程序。 为了正确初始化 log4j,我需要找到 WEB-INF 文件夹的正确绝对路径。

是否有任何方法可以确定在 app-server/ 上运行的 Web 应用程序中 WEB-INF 文件夹的绝对路径

【问题讨论】:

    标签: clojure glassfish ring


    【解决方案1】:

    您可以使用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("/"));
    

    另见:

    【讨论】:

    • 感谢您的回复。但在 clojure 中,我正在使用 ring init 函数,但我不知道如何访问 ServletContext var。
    猜你喜欢
    • 2013-12-20
    • 2019-04-18
    • 2011-03-15
    • 1970-01-01
    • 2011-06-29
    • 2011-05-03
    • 2011-10-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多