【问题标题】:Hide graphicImage if image does not exist如果图像不存在,则隐藏图形图像
【发布时间】:2023-03-23 06:35:02
【问题描述】:

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

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

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

【问题讨论】:

  • 当 myBean.name 返回 null 时是否要隐藏图像?
  • 不,我想在 servlet 返回的图像为空或不存在时隐藏它
  • 发布更多代码和解释。

标签: jsf jsf-2.2


【解决方案1】:

如果我误会了你,那么对不起。

我会建议两种方法来隐藏此图像:

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

    &lt;h:graphicImage value="/picture?name=#{myBean.name}" rendered="pictureControler.isFound"/&gt;

  2. 或者只是将 alt="" 添加到该图像,然后该图像将不会显示。

    &lt;h:graphicImage value="/picture?name=#{myBean.name}" alt=" "/&gt;

注意:最后一个没有测试,但我认为应该可以。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-04-24
    • 2010-10-05
    • 1970-01-01
    • 2013-04-02
    • 2011-12-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多