【问题标题】:JSP pages not showing picture even though it points to the correct directory?即使指向正确的目录,JSP 页面也没有显示图片?
【发布时间】:2014-10-07 10:17:12
【问题描述】:

我正在尝试在我的 jsp 页面中显示图像。我已经确保特定 img 的路径是正确的。我已经尝试了以下所有不同的方法。并且所有内容都已指向该文件夹,但在页面上,它仅显示一个小 x 而未显示图片。

<img src="<%=request.getContextPath()%>/poster/Capture.JPG" alt="capture_test">

<img src="poster/Capture.JPG" alt="capture_test">

<img src="WebContent/poster/Capture.JPG" alt="capture_test">
I've moved the folder one level deeper and it still does not work. 

知道我做错了什么吗?还是有一定的步骤来展示?

ps - 编辑

这是文件夹结构。

根是电影文件夹

movie -> build
      -> poster
      -> src
      -> WebContent
          -> META-INF
          -> WEB-INF
          -> all the different jsp files

【问题讨论】:

  • 请把jsp的文件/文件夹结构和图片贴出来,会有很大帮助的。
  • 您好 Arvind,已编辑,这是文件夹结构。这是文件夹结构。 root是电影文件夹movie -> build -> poster -> src -> WebContent -> META-INF -> WEB-INF -> 所有不同的jsp文件
  • 尝试使用前导斜杠:src="/WebContent/poster/Capture.JPG"

标签: java image jsp


【解决方案1】:

您必须了解本地文件系统路径与 servlet 容器转换 URL 的方式之间的区别。

您的 JSP 将作为 HTML 页面传输到客户端浏览器。浏览器会找到一个&lt;img&gt; 标签,并会向服务器发送另一个请求给定的URL

servlet 容器然后会查找映射到 url 的 servlet,或者映射到 war 根目录下的文件,而不是位于或低于 /WEB-INF

所以在你的用例中,文件夹poster必须位于/WebContent下,正确的img src将是:

<img src="<%=request.getContextPath()%>/poster/Capture.JPG" alt="capture_test">

<img src="<c:url value="/poster/Capture.JPG"/>" alt="capture_test">

<c:url value="/poster/Capture.JPG" var="url"/>
<img src="${url}" alt="capture_test">`

【讨论】:

    【解决方案2】:
    1. 在 Chrome 中打开页面
    2. 按 F12 打开开发者工具
    3. 检查控制台选项卡
    4. Chrome 将向您显示预期的完整 URL 和最终 URL 图像是

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-06-08
      • 2022-01-04
      • 2014-07-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多