为了在模板客户端中使用h:graphicImage渲染简单图像,我已经尝试了一切。 我的图像不是在战争中,而是在同一磁盘上的另一个位置。
实际上我没有显示'alt'属性或警告无法找到图像。 我的图像被找到并且可能被渲染为空框架,其宽度和高度我在h:graphicImage中指定。这个空框架具有背景颜色。
有没有人知道如何从外部位置渲染图像,因为我还没有找到这个例子?
谢谢!
答案 0 :(得分:0)
我已经在本文的帮助下轻松解决了这个问题 - http://balusc.blogspot.com/2007/04/imageservlet.html
答案 1 :(得分:0)
最简单的方法是使用OmniFaces o:graphicImage。使用从文件系统接受文件路径并返回java.io.InputStream的方法创建一个javax.faces.bean.ApplicationScoped bean。像那样:
JAVA:
@Named
@ApplicationScoped
public class FileReader {
public InputStream getImageByPath(String filename) throws FileNotFoundException{
return new FileInputStream(new File(filename));
}
}
JSF:
<html xmlns:o="http://omnifaces.org/ui">
<o:graphicImage value="#{fileReader.getImageByPath('/opt/images/admin/112/IMG_1292.JPG')}"/>