【发布时间】:2010-12-01 13:42:48
【问题描述】:
我有一个来自 Bean 的 ArrayList:
...
public ArrayList<String[]> getArticleList() {
...
}
...
我需要在 JSF2 上使用 EL 打印这些值(使用 getter 方法)(例如 #{bean.articlesLage}
我该怎么做?干杯
【问题讨论】:
我有一个来自 Bean 的 ArrayList:
...
public ArrayList<String[]> getArticleList() {
...
}
...
我需要在 JSF2 上使用 EL 打印这些值(使用 getter 方法)(例如 #{bean.articlesLage}
我该怎么做?干杯
【问题讨论】:
我不记得 JSF 是否支持数组,但是如果你可以将你的 ArrayList<Array> 转换为 ArrayList<ArrayList<String>>,那么这样的东西应该可以工作
<ui:repeat value="#{bean.articleList}" var="t">
<ui:repeat value="#{t}" var="s">
#{s}
</ui:repeat>
</ui:repeat>
【讨论】:
ArrayList<String[]> 有更多String[]。如果数组列表中的第一个String[] 是[hello, im, marco],第二个是[how, are, you],我想打印值marco 和you(每个String[] 位于2° 位置。
#{s} 指的是String[] 的单个String 项。 #{t} 指的是List<String[]> 的单个String[] 项目。所以你想摆脱嵌套的ui:repeat 并改用#{t[2]}。
h:inputText 放入ui:repeat 来编辑ArrayList 的值,该怎么办? stackoverflow.com/questions/19395621
您可以在当前模型 ArrayList 中使用嵌套的 ui:repeat 或这样的嵌套数据表:
<h:dataTable value="#{bean.articleList}" var="row">
<h:column>
<f:facet name="header">
<h:outputText value="COL" />
</f:facet>
<h:dataTable value="#{row}" var="nested_row">
<h:column>
<f:facet name="header">
<h:outputText value="COL" />
</f:facet>
<h:outputText value="#{nested_row}" />
</h:column>
</h:dataTable>
</h:column>
</h:dataTable>
【讨论】: