-1

オブジェクトを Bean に渡したいコマンドリンクを含むデータテーブルがあります。コマンドリンクのアクション属性は、同じページに直接移動します。ナビゲーションはありません。結果として(私は思う/疑う)、または他の理由で、Beanのsetterメソッドが実装されていないため、Beanのオブジェクトがnullになります。どうすればこれを整理できますか。以下は、データテーブルとセッターと私のメソッドからの抜粋です。thnx

<h:commandLink value="Delete"actionListener="#bOQMasterManager.removeBOQ}" action="boqmaster">
     <f:setPropertyActionListener target="#{bOQMasterManager.boqmasterPK}" 
        value="#{boqs.boqmasterPK}" />
   </h:commandLink>


public void setBoqmasterPK(BoqmasterPK boqmasterPK) {
     System.out.println("In the setter!!!");
    this.boqmasterPK = boqmasterPK;

}

public void removeBOQ(ActionEvent event) {
    try {
        System.out.println("In removeBOQ!!!");

        request.removeBoq(boqmasterPK);
        logger.info("Removed BOQ .");
    } catch (IllegalArgumentException e) {
        System.out.println("In the exception!!!"+e.getMessage());

    }
}

4

1 に答える 1

0

まず願っています

actionListener="#bOQMasterManager.removeBOQ}"

actionListener="#{bOQMasterManager.removeBOQ}"

AndsetBoqmasterPKbOQMasterManagerBean で定義されており、それが何であれgetBoqmasterPK定義する必要がありますboqs

public void setBoqmasterPK(BoqmasterPK boqmasterPK) {
    System.out.println("In the setter!!!");
    this.boqmasterPK = boqmasterPK;
}
于 2012-08-25T18:52:05.300 に答える