この例を見て、ユーザーが既に選択されている行のいずれかをクリックした後に選択を保存する方法を理解していません。たとえば、ユーザーが 3 つの行を選択し、そのうちの 1 つをクリックすると、選択した 1 つの行のみに関する情報が表示されます。
これで、次のような遅延読み込みとコンテキスト メニューを備えた DataTable ができました。
<p:dataTable id="al_table" value="#{alarmTable.alarms}"
selection="#{alarmTable.selectedAlarm}" selectionMode="multiple"
var="alarm" resizableColumns="true" paginator="true" rows="50"
sortBy="#{alarm.alarmTimestamp}" sortOrder="descending"
paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
rowsPerPageTemplate="25, 50, 75, 100" lazy="true"
style="table-layout: auto">
<p:ajax event="rowDblselect" update=":form:display"
oncomplete="alarmDialog.show()" />
そして、選択を除いて、すべてが非常にうまく機能します。現在のようなこの動作では、常に選択が失われるため、同時に複数の行でアクションを実行できません。これを解決するには?