JSF EL有两个bean属性

时间:2016-09-20 07:58:37

标签: jsf el

如果我比较渲染属性中的两个值

,为什么此代码不起作用
<c:forEach var="eintrag" items="#{alleEintraege.eintrage}">
    <p:commandButton styleClass="btn btn-info" value="bearbeiten"
                     rendered="#{eintrag.email eq '#{mamanagedBean.benutzer.mit.email}'}"/>
</c:forEach>

两个属性都是正确的。 如果我将它们放在h:outputText标记中,则会显示正确的文字。 只是在组合中他们将无法工作。

2 个答案:

答案 0 :(得分:1)

几乎在那里,只需修复嵌套表达式,因为它将评估为String而不是您期望的那样。

您应该比较同一表达式中的两个bean属性,以获得所需的效果。

示例

<p:commandButton rendered="#{managedBean1.email eq managedBean2.email}" />

答案 1 :(得分:0)

你应该这样比较:

<c:forEach var="eintrag" items="#{alleEintraege.eintrage}">
    <p:commandButton styleClass="btn btn-info" value="bearbeiten" rendered="#{eintrag.email eq mamanagedBean.benutzer.mit.email}"/>
</c:forEach>