在JSP中加载img

时间:2013-07-13 09:43:10

标签: html image jsp


我正在尝试在JSP中动态加载图像,我正在尝试做类似的事情:

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

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

2 个答案:

答案 0 :(得分: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}"/>

答案 1 :(得分:0)

我尝试了成千上万种不同的解决方案,这些解决方案通常在SO中找到,在此问题中又被问过3到4次。许多很多答案都告诉您在HTML中写些什么,但是不必费心告诉您这意味着图像文件应该位于何处。唯一对我有用的是:

将图像文件直接放入“ WebContent”目录中。然后,您的jsp文件中的HTML为:

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

通过推断,我想说的是,如果将图像文件放入WebContent / Images等子目录中,则只需将该子目录添加到src中,就可以弄清楚该怎么做。但是我没有测试。