How to get the values entered in the field Filtered DataTable of Primefaces?
jsf, primefaces, primefaces-datatable
Solution
You can get the filter value from the datatable by
Obtain a reference to the datatable from the view either by binding or walking the tree. By binding, you'll have:
<p:dataTable binding="#{arquivoBean.theDataTable}" id="pDataTableListaRegistros" var="registro" value="#{arquivoBean.listaRegistros}" paginator="true" rows="20" filteredValue="#{arquivoBean.filteredListaRegistros}" styleClass="tabelaCentralizada"/>
And in your backing bean:
DataTable theDataTable = new DataTable();
//getter and setter
From the binding
Map<String, String> theFilterValues = theDataTable.getFilters(); //This returns a map of column-filterText mapping.
Problem
I have a data table: ``` <p:dataTable id="pDataTableListaRegistros" var="registro" value="#{arquivoBean.listaRegistros}" paginator="true" rows="20" filteredValue="#{arquivoBean.filteredListaRegistros}" styleClass="tabelaCentralizada"> ``` I would like to get the values entered in filter fields "Code", "Data do Registro" and "Usuário" to manipulate in a backing bean.