假设在我的支持bean中:
String x []= ....
public String [] getOutput { return this.x;}
public String getOutputAsString(){ return Arrays.asString(x);}
然后在输出页面中我们得到输出:
#{ myBackingbean.outputAsString }
我的问题是如何消除getOutputAsString()
并直接在输出页面输出:
我可以做到
#{ myBackingbean.output[0])
但是对于一个循环的例子?想象一下像
for ( i to #{myBackingbean.ouput.length; ){
#{myBackingbean.ouput [i]; }
}
怎么做?
由于
答案 0 :(得分:2)
只需使用可以迭代数组的标记或组件。在标准JSF中,<c:forEach>
,<ui:repeat>
和<h:dataTable>
。
<c:forEach>
在view build time期间运行并生成JSF组件。
<c:forEach items="#{bean.array}" var="item">
#{item}
</c:forEach>
<ui:repeat>
在视图渲染时运行,不产生标记。
<ui:repeat value="#{bean.array}" var="item">
#{item}
</ui:repeat>
<h:dataTable>
在视图渲染时运行,并生成HTML <table>
。
<h:dataTable value="#{bean.array}" var="item">
<h:column>#{item}</h:column>
</h:dataTable>