ID のように、オブジェクトから一意のフィールドを選択する必要があることはわかっています。次に、私のrowKeyは「item.id」です。これは、すべての itens を dataTable にロードすると正常に動作しますが、新しい項目 (このオブジェクトはまだデータベースに永続化されていません) を null ID で追加すると、dataTable に表示されません。
これに対する解決策は何ですか? ID を rowKey として使用できますが、NULL ID を持つ新しいオブジェクトを追加する必要がある場合があります (これはまだデータベースに保持されていないため)。
私のコードを見てください:
<p:dataTable rowKey="#{item.id}" var="item"
value="#{orcamentoMB.itens}"
emptyMessage="Não foi encontrado nenhum registro"
id="dataTableItens"
selection="#{orcamentoMB.selectedItemOrcamento}"
selectionMode="single" rowIndexVar="rowIndex"
rowStyleClass="#{(rowIndex mod 2) eq 0 ? 'first-row' : 'second-row'}">