使用<a4j:repeat> </a4j:repeat> </rich:datatable>在<rich:datatable>中迭代两个列表

时间:2013-11-13 12:03:32

标签: jsf jsf-2 richfaces richdatatable

我有两个List<String>,我想将它们放在一个<rich:datatable>中,每个List<String>应该是column上的<rich:datatable>。我正在尝试使用<a4j:repeat>执行此操作,但是当我执行该程序时,只显示<rich:datatable>的标题,<rich:datatable>上没有显示任何内容。

查看代码:

 <rich:dataTable>

              <rich:column> 
               <f:facet name="header">URI</f:facet>
                <a4j:repeat value="#{pesquisaBean.documentUriByTitleList}" var="uri">
                 #{uri}
                 </a4j:repeat>
              </rich:column>

              <rich:column>
               <f:facet name="header">Subject</f:facet>
               <a4j:repeat value="#{pesquisaBean.subjectByTitleList}" var="sub">
                 #{sub}
                 </a4j:repeat>
              </rich:column>

   </rich:dataTable>

有什么问题?

谢谢!

1 个答案:

答案 0 :(得分:0)

datatable可以自行遍历列表,repeat不属于那里。您应该将列表合并为一个(因为我假设URI和主题之间存在关系)并让表迭代该列表。 (即,您创建一个包含URI和主题的对象并将其放在列表中)

<rich:dataTable value="#{bean.list}" var="item">
    <rich:column> 
        <f:facet name="header">URI</f:facet>
        #{item.uri}
    </rich:column>

    <rich:column> 
        <f:facet name="header">Subject</f:facet>
        #{item.sub}
    </rich:column>
</rich:dataTable>