f:view <f:view rendered="#{p.statusmsg!=null}">
,<f:view rendered="#{p.picstatus!=null}">
和<f:view rendered="#{p.videostatus!=null}">
内的所有内容都会被执行,无论statusmsg,picstatus或videostatus的值是否为null
1)getMoreStatusUpdate.xhtml
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:p="http://primefaces.org/ui"
xmlns:c="http://java.sun.com/jsp/jstl/core">
<h:head></h:head>
<h:body>
<div id="content">
<h:form>
<ui:repeat var="p" value="#{statusBean.moreStatusList}">
<f:view rendered="#{p.statusmsg!=null}">
//Status content
</f:view>
<f:view rendered="#{p.picstatus != null}">
//Picture Status Content
</f:view>
<f:view rendered="#{p.videostatus != null}">
//Video Status Content
</f:view>
</ui:repeat>
</h:form>
</div>
</h:body>
答案 0 :(得分:4)
<f:view>
doesn't具有rendered
属性。
此属性仅在基于UIComponent
的代码上受支持,该代码是h:
library的所有代码和ui:
库中的一些代码,包括<ui:fragment>
。
只需将<f:view>
替换为<ui:fragment>
。