0

私は行編集可能なprimefacesデータテーブルをたくさん使用しましたが、ここで私はそれで立ち往生しています。データテーブルは正しく表示されていますが、編集ボタンをクリックするとデータテーブルが編集可能モードになり、ここでは のキャンセル ボタンしか使用できません。保存ボタンは何もせず、クリックしても編集可能モードのままです。(そして Bean アクションは呼び出されません)。

ここにコードがあります

<p:dataTable value="#{bean.days}" var="days" editable="true">

    <p:ajax event="rowEdit" listener="#{bean.changeCell}"/>
    <p:ajax event="rowEditCancel" listener="#{bean.changeCell}"/>

    <p:column headerText="my header">
        <p:cellEditor>  
            <f:facet name="output" >
                <h:outputText value="#{days.get(4).date}" >
                    <f:convertDateTime pattern="dd/MM" timeZone="CET" />
                </h:outputText>
            </f:facet>
            <f:facet name="input">
                <p:calendar value="#{days.get(4).date}" locale="fr" mindate="#{jours.get(0).date}" pattern="dd/MM"/>
            </f:facet>  
        </p:cellEditor>
    </p:column>

    ... other columns

    <p:column>
        <p:rowEditor />
    </p:column>
</p:dataTable>

そして豆の部分

@ManagedBean(name = "bean")
@ViewScoped
public class MyBean {

    private List<List<MyDays>> days; // with getters and setters

    @PostConstruct
    public void init() {
        // Filling the list
    }

    public void changeCell(RowEditEvent event) {
        List<MyDays> j = (List<MyDays>)event.getObject();
        System.out.println("here");
    }

}
4

1 に答える 1