add sort and filter a table created at run time

UI Components for JSF
Post Reply
Tarik
Posts: 4
Joined: 26 Jan 2012, 12:49

26 Jan 2012, 12:59

Hello everybody ,

I am having a problem to add filtering and sorting to a table that I create dynamicly . the bellow code works fine except that it does not take in consideration adding filters an sortby to colomuns ( the code in red is ignored or wrong)

private void populateDataTable() {
// create <p:dataTable value="#{myBean.dynamicList}" var="dynamicItem">.
dynamicDataTable = new DataTable();
dynamicDataTable.setValueExpression("value",
FacesUtils.createValueExpression("#{dyntableTest.dynamicList}", List.class));
dynamicDataTable.setVar("dynamicItem");
dynamicDataTable.setRowsPerPageTemplate("");

for (int i = 0; i < dynamicList.get(0).getNamesAndValues().size(); i++) {

//if
// Create <p:column>.
Column column = new Column();

column.setFilterBy(FacesUtils.createValueExpression("#{dynamicItem.namesAndValues[" + i + "].value}",String.class));
column.setSortBy(FacesUtils.createValueExpression("#{dynamicItem.namesAndValues[" + i + "].value}",String.class));

dynamicDataTable.getChildren().add(column);


// Create <f:facet name="header"> of column.
HtmlOutputText header = new HtmlOutputText();
header.setValue(dynamicList.get(0).getNamesAndValues().get(i).getName());
column.setHeader(header);

// Create <p:outputText value="#{dynamicItem[" + i + "]}"> for the body of column.
HtmlOutputText output = new HtmlOutputText();
output.setValueExpression("value",
FacesUtils.createValueExpression("#{dynamicItem.namesAndValues[" + i + "].value}", String.class));
column.getChildren().add(output);
}

}


plz tell me what Iam doing wrong .... , why filtering and sorting is ignored by primefaces

thanks in advance .

Tarik
Posts: 4
Joined: 26 Jan 2012, 12:49

26 Jan 2012, 13:51

hello
any suggestions , comments ..... ???????

Post Reply

Return to “PrimeFaces”

  • Information
  • Who is online

    Users browsing this forum: No registered users and 45 guests