3


我正在尝试在 JSP 中动态加载图像,并且正在尝试执行以下操作:

<img src="<%= book.img %>">

其中 book.img 包含一个字符串(绝对路径)。我该如何解决这个问题?我收到的错误如下:
元素 img 上属性 src 的值错误:PATH 中的 DOUBLE_WHITESPACE。

4

2 回答 2

2

book.img应包含服务器上图像的绝对 URL。

因此,如果您的图像存储在:

Webcontent/resources/images/

你有一张图片:

close-button.png

book.img应该=/resources/images/close-button.png

然后在您的 JSP 中使用 JSTL 创建 URL:

<img src="<c:url value="${book.img}"/>"/>

c:url将域和上下文作为绝对 url 的前缀。

没有 JSTL 的另一种方法是:

 <img src="${pageContext.request.contextPath}${book.img}"/>
于 2013-07-13T09:51:00.027 回答
0

我尝试了无数种不同的解决方案,这些解决方案大多在 SO 中找到,这个问题被问了 3 次或 4 次。很多很多答案都告诉您在 HTML 中写什么,但不会费心告诉您这意味着您的图像文件应该驻留在哪里。唯一对我有用的是:

将您的图像文件直接放入您的“WebContent”目录中。那么你的jsp文件中的HTML是:

    <img src="${pageContext.request.contextPath}/myImageFileName.png">

通过推断,我会说,如果您将图像文件放入 WebContent/Images 之类的子目录中,那么您只需将该子目录添加到 src 中,您就可以弄清楚如何。但我没有测试。

于 2019-11-05T02:19:25.153 回答