DataTable - InCell编辑如何获取在Managed Bean中编辑的对象的值

时间:2012-05-01 14:14:59

标签: jsf primefaces

我希望在我的托管bean中将行作为对象获取其更新的属性。我使用了PrimeFaces展示示例DataTable - InCell Editing。我不明白如何获取编辑的值来更新数据库。我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:9)

只需将保存按钮添加到同一表单即可。 E.g。

<p:commandButton value="Save" action="#{bean.save}" />

public void save() {
    someService.save(someList);
}

或者,如果您要对每个单独的行编辑事件执行保存,请向<p:ajax event="rowEdit">添加<p:dataTable>。 E.g。

<p:dataTable ...>
    ...
    <p:column>
        <p:rowEditor />  
    </p:column>  
    <p:ajax event="rowEdit" listener="#{bean.save}" />
</p:dataTable>

public void save(RowEditEvent event) {
    someService.save((SomeItem) event.getObject());
}