【问题标题】:Getting Context path获取上下文路径
【发布时间】:2010-01-10 21:48:08
【问题描述】:

我正在使用 Eclipse 开发一个动态 Web 项目 j2ee Web 应用程序。我在 web-inf/jasperreports 文件夹中有一个 .jrxml 格式的现有 jasper 报告文件。如何从 src 文件夹中的 java 类访问这些文件。我什至不确定上下文路径是否是应用程序根文件夹的正确术语,所以请在这部分也启发我。

顺便说一句,我正在使用spring webflow。我如何获取或初始化对象 servlet 上下文

【问题讨论】:

    标签: servlets jakarta-ee


    【解决方案1】:

    ServletContext.getRealPath 方法可用于获取上下文路径。 ServletContext.getRealPath("/") 返回 webapp 根路径。 WEB-INF/jasperreports 的路径是:

    ServletContext sc = getServletContext();
    String reportPath = sc.getRealPath("/WEB-INF/jasperreports");
    

    您可以从ServletContextListenerServlet 初始化您的java 类,您可以分别通过继承的getServletContext()servletContextEvent.getServletContext() 获得ServletContext 的引用。

    【讨论】:

    • 更准确地说:getRealPath() 将相对 web 内容路径“转换”为绝对磁盘文件系统路径,您可以在通常的 java.io 内容中进一步使用它。另一方面,您也可以在这里使用getResource() 甚至getResourceAsStream()
    • 我使用的是spring的webflow。如何在流程中获取或初始化对象 ServletContext。
    猜你喜欢
    • 2012-07-26
    • 1970-01-01
    • 2016-04-08
    • 1970-01-01
    • 1970-01-01
    • 2016-11-19
    • 2018-03-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多