当我在tomcat 6 webapps文件夹中部署名为“myapp.war”的war文件时,jsp中的图像正在正确加载,而如果我将其部署在webapps / ROOT文件夹中,则图像不会加载到jsp中。
war文件结构
-- myapp
- WEB-INF
-jsp
-images
在jsp页面中,images文件夹中的图像被称为
<img src="images/img1.png"/>
答案 0 :(得分:1)
您应该使用绝对路径来引用图像。如果您在其中包含contextPath,即使您的应用程序路径发生更改,该链接仍应有效。尝试
<img src="${pageContext.request.contextPath}/images/mobile.png" height="34" width="38" alt="mobile" />
答案 1 :(得分:0)
我终于找到了解决方案。
当代码部署在ROOT内部或者部署在webapp中的war并通过更改tomcat server.xml中的上下文作为ROOT应用程序时,会发生什么?
以任何一种方式tomcat都在考虑像完整的war内容直接在tomcat webapp文件夹中。
我已经在webapps中直接使用了一个名为images的文件夹(出于其他目的),因此覆盖了images文件夹。当我删除/重命名该文件夹时,预期的图像(从jsp调用的图像)开始出现。