Richfaces 3.3.3. Окончательный выбор данных - PullRequest
1 голос
/ 09 сентября 2011

Может кто-нибудь подсказать мне, как использовать selection функциональность extendeddatatable в rich:datatable?

Мое требование - каждая строка содержит более 15 столбцов, и все они доступны для редактирования и должны иметь возможность масштабированиядо 3000 записей на странице.

Я использую JSF 1.2 и richfaces 3.3.3.final с пружинным потоком.

1 Ответ

4 голосов
/ 12 сентября 2011

Чтобы использовать атрибут selection для extendeddatatable:

Объявите в своем представлении

<rich:extendedDataTable id="xxxDataTable" value="#{xxxBean.listXxxDataModel}"   
var="xxxItem" selectionMode="single" rows="3" width="800px" height="100px" noDataLabel="#{msg.dataTable_noDataLabel}"
selection="#{xxxBean.xxxSelection}">

Привязайте значение dataTable к ExtendedTableDataModel: используйте org.richfaces.model.DataProvider для предоставления данных дляthe ExtendedTableDataModel.

ArrayList<XXX> values = ...;
XXXDataProvider xxxDataProvider = new XXXDataProvider(values);
ExtendedTableDataModel<XXX> xxxDataModel = new ExtendedTableDataModel<XXX>(xxxDataProvider);

Выбор привязывается к

/** Binding selection */
private SimpleSelection xxxSelection;

Last, чтобы извлечь выбранный объект из вашего поставщика данных:

key = xxxSelection.getKeys().next();
selectedObject = xxxDataModel.getObjectByKey(key);
...