如何有条件地渲染<p:graphicimage>取决于资源是否存在</p:graphicimage>

时间:2014-08-29 14:15:24

标签: jsf graphicimage

如果资源网址有效,我该如何呈现<p:graphicImage>

<p:graphicImage url="#{resource['images/image.png']}" />

基本上,我只想在#{resource['images/image.png']}实际存在的情况下渲染我的graphicImage。我该如何验证?我试图关注this JavaScript example,但我没有成功。

2 个答案:

答案 0 :(得分:3)

检查ResourceHandler#createResource()是否不返回null

<p:graphicImage name="images/image.png" rendered="#{not empty facesContext.application.resourceHandler.createResource('images/image.png')}"/>

请注意,我将url="#{resource['resourceName']}"替换为更简单的name="resourceName"

答案 1 :(得分:-1)

我不使用网址,而是使用名称和图书馆的组合......

这对我有用......希望有所帮助

<h:dataTable id="image" value="#bb.getCurrentBorrowerImage(history.borrower_id)}" var="i" >
<h:column rowHeader="">
<h:graphicImage name="#{i.imageFileName}" library="borrower_images" alt="Item Image"   height="100" width="100" rendered="#{!empty i.imageFileName}"/>
</h:column>