最初に言いたいのは:
- How to use JSF's h:selectBooleanCheckbox with h:dataTable to create one object per row?を見ました 私の問題は同じですが、解決されていません。
以下は私のコードです:
*.xhtml
<rich:column>
     <h:selectBooleanCheckbox  id="resolveTxn" value="#{verifyTransactionBean.checked[verifyTxnList.id]}"/>
</rich:column>
.
.//Some code here
.
<h:commandButton value="Resolve" action="#{verifyTransactionBean.resolveToTxn}"  styleClass="btn" />
以下は私のコードです
private Map<Long, Boolean> checked = new HashMap<Long, Boolean>();
public void resolveToTxn() {
    List<ToVerifyTxnDTO> list = new ArrayList<ToVerifyTxnDTO>();
    for (ToVerifyTxnDTO dTO : toVerifyTxnDTOList) {
        if(checked.get(dTO.getId())){//I got null pointer exception here
           Long id=dTO.getId(); 
           verifyTransactionSessionBeanLocal.updateResolvedflag(id);
        }
    }
}
私がしたいこと ?
次のパラメータとしてチェックされた行IDを渡したい:
verifyTransactionSessionBeanLocal.updateResolvedflag(id);
ボタンをクリックした後、何らかの操作を行い、同じページResolveを更新して表示する必要があります。dataTable操作はできているがnull pointer exception、同じページを表示(赤化)しながら取得
ありがとう