【问题标题】:image not loading in jsp deployed inside webapps ROOT folder图像未加载到部署在 webapps ROOT 文件夹中的 jsp 中
【发布时间】:2012-10-09 19:22:34
【问题描述】:

当我在 tomcat 6 webapps 文件夹中部署名为“myapp.war”的 war 文件时,jsp 中的图像会正确加载,而如果我将其部署在 webapps/ROOT 文件夹中,则图像不会在 jsp 中加载。

war文件结构

-- myapp
- WEB-INF
-jsp
-images

在jsp页面中,images文件夹中的图像被称为

<img src="images/img1.png"/>

【问题讨论】:

  • 如何引用图像文件?为什么不向我们展示您的 JSP 的一部分?
  • 这是来自 jsp 的一小段代码 '

    '
  • 在上面的代码中 mobile.png 没有加载

标签: image jsp tomcat root


【解决方案1】:

您应该使用绝对路径来引用图像。如果您在其中包含contextPath,即使您的应用程序路径发生更改,该链接也应该有效。试试

<img src="${pageContext.request.contextPath}/images/mobile.png" height="34" width="38" alt="mobile" />

【讨论】:

    【解决方案2】:

    我终于找到了解决办法。

    当代码部署在 ROOT 内或将 war 部署在 webapp 内并通过更改 tomcat server.xml 中的上下文创建为 ROOT 应用程序时会发生什么情况

    无论哪种方式,tomcat 都认为完整的战争内容直接在 tomcat webapp 文件夹中。

    我已经在 webapps 中直接有一个名为 images 的文件夹(出于其他目的),因为 images 文件夹已被覆盖。当我删除/重命名该文件夹时,预期的图像(从 jsp 调用的图像)开始出现。

    【讨论】:

      猜你喜欢
      • 2011-09-29
      • 2019-08-11
      • 1970-01-01
      • 2021-10-29
      • 1970-01-01
      • 2019-12-30
      • 2015-07-23
      相关资源
      最近更新 更多