monakhv wrote:Hi!
I use dynamic column with c:forEach. I do not test filter function but sortBy work very well.
Here is working example
Column classCode: Select all
<p:dataTable id="#{TableId}" var="supportS" value="#{Values}" rows="#{bundle.Config_Row_NumberDialogs}" paginator="true" selectionMode="multiple" selection="#{Selection}"> <c:forEach var="column" items="#{sessionController.settings.supportDialogTable.columns}"> <p:column sortBy="#{supportS[column.sortByName]}" > <f:facet name="header"> <h:outputText value="#{column.headerName}"/> </f:facet> <h:outputText value="#{supportS[column.name]}"/> </p:column> </c:forEach> </p:dataTable>
Code: Select all
public class Column implements Serializable{ private String name;//prop name private String headerName;//Column header private String sortByName;//Object to make sorting public Column(String propName, String headerName, String sortByName) { this.name = propName; this.headerName = headerName; this.sortByName = sortByName; } public String getHeaderName() { return headerName; } public void setHeaderName(String headerName) { this.headerName = headerName; } .....
Code: Select all
public abstract class DataTable<T> { private List<Column> columns;//active column public List<Column> getColumns() { return columns; } public void setColumns(List<Column> columns) { this.columns = columns; } ... }
hi monakhv,
you can put here you Code of supportS[column.name] please, i dont understand very well thi