如果图像不存在,请隐藏graphicImage

时间:2015-03-31 11:35:51

标签: jsf jsf-2.2

我有一个graphicImage从servlet获取它的值(称为"图片" - 它动态地提供存储在服务器上的图像)。

我想在servlet返回null(未找到图像)时隐藏graphicImage。 我尝试使用FacesContext.getCurrentInstance()。getExternalContext()。getResource(),但即使是正确的URL也会返回null。

 <h:graphicImage value="/picture?name=#{myBean.name}" />

1 个答案:

答案 0 :(得分:0)

如果我想念你,那么抱歉。

我建议两种隐藏此图片的方法:

  1. 如果该图像存在与否,您可以签入任何ControllerBean(myBean或...),并将呈现的属性传递给JSF UI:

    <h:graphicImage value="/picture?name=#{myBean.name}" rendered="pictureControler.isFound"/>

  2. 或者只是添加alt =&#34;&#34;对于该图像,此图像将被显示。

    <h:graphicImage value="/picture?name=#{myBean.name}" alt=" "/>

  3. 注意:最后一个未经测试,但我认为应该有效。