问题描述
我们目前正在将应用程序从 Java6 迁移到 Java8。我们使用 primefaces-4.0 和 JSF 2.2 版本。
代码如下:
// Iterate over columns.
for (int i = 0; i < dynamicList.get(0).size(); i++) {
// Create <h:column>.
column = new Column();
// Create <h:outputText value="dynamicHeaders[i]"> for <f:facet name="header"> of column.
column.setHeaderText(dynamicHeaders[i]);
//column.setWidth("" + (100 / dynamicHeaders.length));
//dynamicDataTable.getChildren().add(column);
System.out.println("Table after setting values");
System.out.println("List size is:"+dynamicList.size());
System.out.println("First list size is:"+dynamicList.get(0).size());
System.out.println("Elements:"+dynamicList.get(0));
System.out.println(column.getHeaderText());
System.out.println(column.getChildren().get(i)); //Getting IndexOutOfBounds exception in this line
// Create <h:outputText value="#{dynamicItem[" + i + "]}"> for the body of column.
output = new OutputLabel();
output.setValueExpression("value",createValueExpression("#{dynamicItem[" + i + "]}",String.class));
column.getChildren().add(output);
System.out.println("Column information");
System.out.println(output.toString());
System.out.println(output.getValue());
System.out.println(output.getChildren().get(i));
System.out.println(output.getValueExpression("value"));
System.out.println(output.getChildren().size());
System.out.println(output.getFamily());
}
我们正在 Excel 中生成报告。调试代码时能够看到 IndexOutOfBounds 异常(已注释该行)。在日志中,我可以打印列表值,并且表也是使用素数构造的。我只有在为表设置值时才会遇到问题。这在 Java6 中工作正常。
我无法确定问题出在哪里。请帮忙。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)