0

为了在模板客户端中使用 h:graphicImage 渲染简单的图像,我已经尽我所能。我的图像不在战争中,而是在同一个磁盘上的另一个位置。

实际上我没有显示“alt”属性或警告找不到图像。我的图像被找到并且可能被渲染为具有我在 h:graphicImage 中指定的宽度和高度的空框架。这个空框架有背景颜色。

有谁知道如何从外部位置渲染图像,因为我没有找到这个例子?

谢谢!

4

1 回答 1

1

最简单的方法是使用 OmniFaces o:graphicImage。使用从文件系统接受文件路径并返回 java.io.InputStream 的方法制作一个 javax.faces.bean.ApplicationScoped bean。像那样:

爪哇:

@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')}"/>
于 2016-07-20T14:33:44.883 回答