Java 如何通过从Web应用调用URL访问图像

Java 如何通过从Web应用调用URL访问图像,java,rest,tomcat,jakarta-ee,servlets,Java,Rest,Tomcat,Jakarta Ee,Servlets,我在tomcat上部署了一个webapp(abc.war),有一个图像文件夹,下面有几个图像,我可以通过URL访问这些图像:xx.xx/abc/image/hello.jpg 这个项目正在运行的生活,但我不能得到如何检索这些图像 现在我在tomcat中部署了另一个基于REST的项目,我想要类似的行为,例如 xx.xx/hellorest/images/anil.jpg,但目前我无法使用上述URL访问 需要帮助,这是如何可能的。我不想使用任何Servlet来读写图像。首先,无法从外部访问/WEB-

我在tomcat上部署了一个webapp(
abc.war
),有一个图像文件夹,下面有几个图像,我可以通过URL访问这些图像:
xx.xx/abc/image/hello.jpg

这个项目正在运行的生活,但我不能得到如何检索这些图像

现在我在tomcat中部署了另一个基于REST的项目,我想要类似的行为,例如
xx.xx/hellorest/images/anil.jpg
,但目前我无法使用上述URL访问


需要帮助,这是如何可能的。我不想使用任何Servlet来读写图像。

首先,无法从外部访问/WEB-INF

其次,如果使用/images/temp.jpg,浏览器将从web服务器的根目录加载图像,而不是从web应用程序的根目录(部署在上下文路径下)加载图像

使用JSTL标记从web应用程序的根生成绝对路径:
“alt=…/>

“有一个图像文件夹”:在哪里?什么是
xx.xx
?如何…将图像放入war文件中,放在名为
images
的文件夹中(假设xx.xx是主机名,hellorest是您的Web应用程序的竞赛路径)?是,图像是abc.war中的文件夹,图像是hellorest.war中的文件夹。xx.xx是主机名,abc和hellorest是这两个应用程序的不同上下文路径。图像/图像文件夹与WEB-INF文件夹并行。因此,这应该可以工作,除非您将servlet映射到
/images/*
/
并因此被调用而不是默认的servlet服务静态文件。当您转到
/hellorest/images/anil.jpg
时会发生什么?当我调用/hellorest/images/anil.jpg时,我得到以下错误--HTTP状态404-添加默认/images/*问题是,在web.xml中,所有请求(/*)都通过了Jersey servlet。