java Richfaces 3正在尝试获取类型上的动态列工作属性“0”
我正试图让JSF1.2遗留项目使用RichFaces3.3工作。决赛
我正在尝试创建一个包含动态列的datatable,但出现错误:
Caused by: javax.el.PropertyNotFoundException: /index.xhtml @44,58 value="#{results[ind].columnName}": Property '0' not found on type ..../TableBean
我基本上遵循本页的示例-http://livedemo.exadel.com/richfaces-demo/richfaces/columns.jsf?tab=usage&cid=278645,但它们没有显示其支持的bean代码
这是我的相关代码
<rich:dataTable id="resultsTable" value="#{tableBacking.results}" var="results">
<f:facet name="header">
<h:outputText value="Results" />
</f:facet>
<rich:column>
<f:facet name="header">
<h:outputText value="First Columns" />
</f:facet>
</rich:column>
<rich:columns value="#{tableBacking.columns}" var="columns" index="ind" id="column#{ind}">
<f:facet name="header">
<h:outputText value="#{columns.header}" />
</f:facet>
<h:outputText value="#{results[ind].columnName}" />
</rich:columns>
</rich:dataTable>
背豆
public class TableLookupBacking {
private List<ColumnModel> columns = null;
private List<TableBean> results = null;
public List<ColumnModel> getColumns() {
if(columns == null) {
columns = new ArrayList<ColumnModel>();
columns.add(new ColumnModel("header", "Property"));
columns.add(new ColumnModel("header2", "Property"));
columns.add(new ColumnModel("header3", "Property"));
System.out.println("columns.size = "+columns.size());
}
return columns;
}
public List<TableBean> getResults() {
if(results == null) {
results = new ArrayList<TableBean>();
results.add(new TableBean("id"));
results.add(new TableBean("name"));
System.out.println("results.size = "+results.size());
System.out.println("results.0 = "+results.get(0).getColumnName());
}
return results;
}
public void setResults(ArrayList<TableBean> results) {
this.results = results;
}
public void setColumns(ArrayList<ColumnModel> columns) {
this.columns = columns;
}
}
菜豆
public class TableBean {
private String columnName;
public TableBean(String columnName) {
this.columnName = columnName;
}
public String getColumnName() {
return columnName;
}
public void setColumnName(String columnName) {
this.columnName = columnName;
}
}
# 1 楼答案
我终于明白了,您需要一个richfaces数据表的列表。这不是使用primefaces的方式,我已经习惯了使用primefaces。记录在案的是,richfaces示例基本上没有支持bean代码的示例,这只是primefaces更好的另一个原因
# 2 楼答案
换线
到