从支持bean直接输出值,这是一个数组:

时间:2015-07-01 04:03:25

标签: arrays jsf iteration

假设在我的支持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]; }
    }

怎么做?

由于

1 个答案:

答案 0 :(得分:2)

只需使用可以迭代数组的标记或组件。在标准JSF中,<c:forEach><ui:repeat><h:dataTable>

  1. <c:forEach>view build time期间运行并生成JSF组件。

    <c:forEach items="#{bean.array}" var="item">
        #{item}
    </c:forEach>
    
  2. <ui:repeat>在视图渲染时运行,不产生标记。

    <ui:repeat value="#{bean.array}" var="item">
        #{item}
    </ui:repeat>
    
  3. <h:dataTable>在视图渲染时运行,并生成HTML <table>

    <h:dataTable value="#{bean.array}" var="item">
        <h:column>#{item}</h:column>
    </h:dataTable>