GraphicImage:如果value属性返回null,如何使用默认图像



因此,我试图实现的是,每当value属性无法引用正确的图像时(例如,数据库中没有上传图像/没有图像),都会使用资源库中的默认图像。

只是为了将其可视化:

用户没有提供个人资料图片,所以bean.icon应该是null

<o:graphicImage value="#{bean.icon}" dataURI="true" /> (null isn't allowed as return value)

现在,我希望graphicImage组件显示默认的,从语义上讲:

<o:graphicImage name="img/default.png" dataURI="true" />

有没有可能以一种优雅的方式实现这一点,也许不需要使用JavaScript?

不通过<o:graphicImage>组件。但是,在Faces#getResourceAsStream()实用程序的帮助下,您可以在bean中实现这一点。

public InputStream getIcon() {
    InputStream input = yourIconService.getIconAsInputStreamSomehow();
    return (input != null) ? input : Faces.getResourceAsStream("/resources/img/default.png");
}

相关内容

  • 没有找到相关文章

最新更新