gpt4 book ai didi

java - ServletContext getResource 不工作

转载 作者:搜寻专家 更新时间:2023-10-30 21:27:10 25 4
gpt4 key购买 nike

我正在尝试使用 ServletContext.getResource 检索对图像文件的 java.net.url 引用(然后我将使用以下方法将其包含在 PDF 库中iText)。
当我使用 ServletContext.getRealPath("picture.jpg") 时,我得到了一个字符串 URL。但是,getResource 始终返回 null

示例 1:

String picture = ServletContext.getRealPath("picture.jpg");
// picture contains a non-null String with the correct path
URL pictureURL = ServletContext.getResource(picture);
// pictureURL is always null

示例 2:

URL pictureURL = ServletContext.getResource("picture.jpg");
// pictureURL is always null

那么构建指向我的 webapps/ 文件夹中文件的 java.net.URL 对象的正确方法是什么?为什么 getRealPath 有效但 getResource 无效?

如果有帮助的话,这是我的文件夹结构

webapps -> mySite -> picture.jpg

我的图片是否需要存储在 WEB-INFWEB-INF/classes 中才能被 getResource 读取?

最佳答案

Returns a URL to the resource that is mapped to a specified path. The path must begin with a "/" and is interpreted as relative to the current context root.

因此您必须提供上下文相关的完整路径。例如:

URL pictureURL = servletContext.getResource("/images/picture.jpg");

(注意小写的 servletContext 变量)

关于java - ServletContext getResource 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3006732/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com