私は次のコードを持っています、jsf2.2、primefaces3.2を使用しています。私の要件は、updateFlagに応じてプロジェクトを更新することです。次のコードのようにc:if(xmlns:c = "http://java.sun.com/jsp/jstl/core")を使用すると、UpdatecommandButtonのアクションリスナーが呼び出されません。しかし、<c:if>の代わりに<p:panel render = "#{projectBean.updateFlag}">を使用すると、機能します。私がそれを手に入れるのを手伝ってください、私はc:ifを使うべきだと思いますが、それは機能しません。
<p:dialog widgetVar="projectUpdate" id="projectUpdatePanel" modal="false" >
<p:panel>
<c:if test="#{projectBean.updateFlag == false}">
<h:outputText value="Project Title" />
<p:inputText disabled="true" value="#{projectBean.selectedProjectDo.projectTitle}" />
<p:commandButton value="Update" disabled="true" />
<p:commandButton value="Cancel" actionListener="#{projectBean.cancelUpdate}" />
</c:if>
<c:if test="#{projectBean.updateFlag == true}">
<h:outputText value="Project Title"/>
<p:inputText value="#{projectBean.selectedProjectDo.projectTitle}" />
<p:commandButton value="Update" actionListener="#{projectBean.updateProject}" />
<p:commandButton value="Cancel" actionListener="#{projectBean.cancelUpdate}" />
</c:if>
</p:panel>
</p:dialog>