私はp:datatable
プライムフェイスを持っており、データテーブルで行イベントを選択するさまざまな方法に対してさまざまなリスナーを持っています。
テーブルで選択した行が既に選択されていることを確認する必要があります。どうすれば確認できますか?
p:blockUI
既に選択されているテーブルの行を選択したときに実行されないので、これが必要です。
私のページコードがあります:
...
<pe:blockUI autoShow="true"
source="itemsDT"
event="rowSelect"
target=":processTab">
<au:loading />
</pe:blockUI>
<p:dataTable widgetVar="processesTable"
id="itemsDT"
var="item"
value="
{tasksbacking2.availableProcesses}"
selection="#{tasksbacking2.selectedProcess}"
rowKey="#{item.id}"
tableStyleClass="table
table-condensed table-bordered"
resizableColumns="true">
<p:ajax event="rowSelect"
listener="#{tasksbacking2.onClickFillDetails}"
update="@this,:processTab,:menuForm:menuBar" />
...
</p:dataTable>
...
マネージド Bean には、次のリスナーがあります。
...
public void onClickFillDetails(SelectEvent event) {
AnoProcess clickedProcess = (AnoProcess) event.getObject();
setSelectedProcess(clickedProcess);
Movement currentMovement = this.getProcessesLastMovement().get(clickedProcess);
if (currentMovement != null && !currentMovement.isViewed()) {
markAsRead(processes);
}
...
}