这就是我所做的(顺便说一句,我使用的是Struts2框架):
我有一个自定义拦截器,它生成一个图像文件并将其保存在WebContent下的目录下(我们称之为dir1
)。文件的名称(相对路径)保存在会话中。
当调用该动作时,它返回SUCCESS并加载某个页面。
在该页面中,我有一个img
标记
src="<s:property value="#session.filename">"
现在加载页面时,图像不会被加载。我多次运行整个过程,生成了大量图像。然后我将img属性更改为src="dir1/file1.jpg"
并且它可以正常工作。但后来我尝试了其他图像(file15.jpg,file9.jpg),图像再次无法加载。
底线是:只加载了一些图像,有些图像甚至不在同一目录中。
P.S。我将图像生成为BufferedImage对象,然后使用ImageIO.write方法创建图像文件。
答案 0 :(得分:0)
您的图像生成器(您提到的拦截器)似乎无法正常工作。
如果即使使用<img src="dir1/file15.jpg"/>
也未加载图像,则表示浏览器无法将'dir1 / file15.jpg'识别为正确的图像。
首先尝试使用某些图像查看器程序查看图像,以确保图像文件是正确的文件。