【发布时间】:2015-03-10 05:50:38
【问题描述】:
我正在解析 Web 应用程序中的 HttpRequest。我的 servlet 扩展了 HttpServlet
我需要在 WAR 文件中找到直到 WEB-INF 的路径,以便可以访问 WEB-INF 中存在的文件。
我不能使用 Realpath,所以必须有一些替代方法。
尝试使用
ServletContext servletContext = getServletContext();
InputStream input = servletContext.getResourceAsStream("/WEB-INF");
但每次
Sysem.out.println(input) returns null
请提出建议。
【问题讨论】:
-
WEB-INF 是一个目录。你期望上面的代码做什么?正如您的问题所问的那样,您为什么不尝试访问文件?
-
我需要访问 WEB-INF 文件夹中的文件。所以我需要至少到 WEB-INF 的路径。这就是我想要做的。我也尝试过 /,但流始终为空
-
那么,如果你需要加载文件foo.txt,你不觉得路径应该是/WEB-INF/foo.txt吗?
-
我不需要加载文件。我只需要文件的路径。该文件将由另一个引擎加载。我需要提供文件的路径。
-
没有文件。它是战争文件中的资源。你应该传递给引擎的是一个 InputStream。你应该做的是使用
servletContext.getResourceAsStream("/WEB-INFfile.txt")获取 InputStream。
标签: java servlets web-applications