0

SelectOneMenu で idem を選択してプロパティを設定することに関連する問題があります。これはそれです:私が持っているプレゼンテーション層で:

<h:selectOneMenu id="fio" value="#{page.personOwner}" disabled="#{page.readonly}" readonly="#{page.readonly}" >         
                                <a4j:support event="onchange" reRender="generalForm" ajaxSingle="true" />           
                                <f:selectItems value="#{page.agrGrpRelInsPersons}" ></f:selectItems>
                            </h:selectOneMenu>

そのため、リストである「agrGrpRelInsPersons」でメニューを埋めることができます。これはそれを返すメソッドです:

public List<SelectItem> getAgrGrpRelInsPersons(){
        List<SelectItem> persons = new ArrayList<SelectItem>();
        for(AgrGrpRel agrGrpRel : getAgreement().getAgrGrpRels()){
            for(InoPerRel inoPerRel :agrGrpRel.getAgreement().getInsObject().getInoPerRels()){
                persons.add(new SelectItem(((Person)inoPerRel.getPerson()), inoPerRel.getPerson().getName1()+" "+inoPerRel.getPerson().getName2()+" "+inoPerRel.getPerson().getName3()));
                }
            }
        return persons;
    }

..ここでは、新しい SelectItem Im の最初のパラメーターとして、setter に設定したいオブジェクト Person を渡していることがわかります。

public void setPersonOwner(Person person){
        getAgreementExt().setOwner(person);
    }

しかし、これは私にとってはうまくいきません.今、私が何を間違っているのか、何が欠けているのかを知りたいです.

ご提案いただきありがとうございます。

4

0 に答える 0