我正在使用<p:dataTable>
并且在<p:column>
我有一个<p:commandButton>
必须在 bean 中指定的一种条件下禁用的。
这是表格:
<p:dataTable var="flusso" id="flussoList" rows="5"
widgetVar="flussoTable" value="#{invioFlussiTUManagedBean.flussi}"
filteredValue="#{invioFlussiTUManagedBean.filteredFlussi}"
emptyMessage="#{i18n['tu.msg.emptysearch']}" paginator="true"
paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink}">
<p:column style="width:100px;height:35px;">
<p:commandButton
update=":invioFlForm:flussoList :invioFlForm:displayConfirm"
icon="ui-icon-extlink" oncomplete="confirmation.show()"
title="#{i18n['tu.button.flusso.invia']}"
rendered="#{flusso.statoFlusso.code == 'DS'}"
disabled="#{!invioFlussiTUManagedBean.dettaglio}">
<f:setPropertyActionListener value="#{flusso}"
target="#{invioFlussiTUManagedBean.selectedFlusso}" />
<f:setPropertyActionListener value="#{false}"
target="#{invioFlussiTUManagedBean.modoInvioTutti}" />
</p:commandButton>
</p:column>
</p:dataTable>
在我的 ManagedBean 中:
public boolean isDettaglio() {
return flussiTURepository.isDettaglio(selectedFlusso);
}
此方法查询数据库并返回true
或false
取决于是否selectedFlusso
响应条件。
问题是这样的:在方法中isDettaglio()
,selectedFlusso
在f:setPropertyActionListener
. 当方法被调用时,selectedFlusso
是null
. 如何在is notselectedFlusso
的 disabled 属性中进行设置?<p:commandButton>
null