Reputation: 559
Can someone hint me on how to utilize selection
functionality of extendeddatatable
in rich:datatable
?
My requirement is each row contains more than 15 columns and all are editable and should be able to scale upto 3000 records in a page.
I'm using JSF 1.2 and richfaces 3.3.3.final with spring webflow.
Upvotes: 1
Views: 1959
Reputation: 1720
To use the selection attribute on extendeddatatable:
Declare in your view
<rich:extendedDataTable id="xxxDataTable" value="#{xxxBean.listXxxDataModel}"
var="xxxItem" selectionMode="single" rows="3" width="800px" height="100px" noDataLabel="#{msg.dataTable_noDataLabel}"
selection="#{xxxBean.xxxSelection}">
Bind your dataTable value to ExtendedTableDataModel : use a org.richfaces.model.DataProvider to provide data to the ExtendedTableDataModel.
ArrayList<XXX> values = ...;
XXXDataProvider xxxDataProvider = new XXXDataProvider(values);
ExtendedTableDataModel<XXX> xxxDataModel = new ExtendedTableDataModel<XXX>(xxxDataProvider);
The selection is binding to
/** Binding selection */
private SimpleSelection xxxSelection;
Last, to retrieve the selected object from your dataprovider :
key = xxxSelection.getKeys().next();
selectedObject = xxxDataModel.getObjectByKey(key);
Upvotes: 4