JSF 2.0中ui:repeat标记的文档说你可以遍历ResultSet而不是我的代码:
<ui:repeat value="#{bean.resultSet}" var="row" varStatus="status">
#{row.string("mySQLColumn")}
</ui:repeat>
产生此错误:
javax.faces.FacesException: Iteration start index is greater than the number of available rows.
at com.sun.faces.facelets.component.UIRepeat.validateIterationControlValues(UIRepeat.java:682)
at com.sun.faces.facelets.component.UIRepeat.process(UIRepeat.java:505)
at com.sun.faces.facelets.component.UIRepeat.encodeChildren(UIRepeat.java:974)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1756)
at javax.faces.render.Renderer.encodeChildren(Renderer.java:168)
答案 0 :(得分:1)
尽管它似乎被支持作为迭代的参数,但最好先将其转换为List
然后迭代。
这样您就不会将数据库访问技术传播到视图层。