У меня есть р: DataTable, который хранит результаты обработанного вида, и я выполнить следующие действия: значения формыPrimefaces DataTable сортировки после фильтрации
- заливки.
- Отправить.
- Таблица данных заполнена - фильтр на любой колонке.
- Измените значения формы.
- Отправить.
- Таблица данных заполнена новыми результатами.
- Отображается сортировка по любому столбцу - отфильтрованные результаты из # 3.
У меня есть сортировщик для отфильтрованных значений, но я ничего не делаю с ним в фасоли. В представлении я вызываю actionListener, который передает dataTable в файл primefaces.components.datatable.DataTable, а затем вызывает resetValue() на нем (см. Фрагмент кода ниже), прежде чем обрабатывать форму.
Я пробовал несколько способов сброса, очистки и обновления dataTable, но я не могу обойти вышеупомянутую проблему. Просто для справки, это мой р: DataTable тег:
<p:dataTable
id="resultsDataTable"
rendered="#{entityReportBean.isResultsPopulated}"
var="change"
value="#{entityReportBean.entityChangeDto}"
styleClass="resultsPanel"
rows="100"
paginator="true"
paginatorPosition="top"
paginatorTemplate="#{PreviousPageLink} Previous {CurrentPageReport} Next {NextPageLink}"
filterEvent="enter"
filteredValue="#{entityReportBean.filteredResults}" >
и это ActionListener:
public void onSubmit() {
FacesContext context = FacesContext.getCurrentInstance();
DataTable resultsTable = (DataTable) context.getViewRoot().findComponent("results:resultsDataTable");
resultsTable.resetValue();
...
Я довольно новыми для JSF/Primefaces, поэтому могут быть некоторые основные операции я не осознавая. Какие-либо предложения?