<rich:extendeddatatable> <c:foreach>通过“地图地图”显示表格</c:foreach> </rich:extendeddatatable>

时间:2013-05-17 09:52:26

标签: jsf jsf-2 richfaces jstl

我有一个结构的数据模型:TreeMap < String, TreeMap< String, Double>> resultMap; 这存储在SessionScoped ManagedBean

我试图通过动态< rich:extendedDataTable>其中输出

  • 第一张地图的关键是行标签
  • 第一张地图的值是第二张地图(对应于行上的列
  • 第二张地图的键是列标题
  • 第二张地图的值是列值

源代码:

<rich:extendedDataTable
    value="#{queryBean.resultMap.keySet().toArray()}" var="key"
    frozenColumns="1" styleClass="rich-extdt">

    <rich:column width="75px">
        <f:facet name="header">
            <h:outputText value="Mediation" />
        </f:facet>
        <h:outputText value="#{key}" />
    </rich:column>

    <rich:column width="75px">
        <f:facet name="header">
            <h:outputText value="Test" />
        </f:facet>
        <h:outputText value="#{queryBean.resultMap[key]}" />
    </rich:column>

    <c:forEach items="#{queryBean.resultMap[key]}" var="map">

        <rich:column width="75px">
            <f:facet name="header">
                <h:outputText value="#{map.key}" />
            </f:facet>
            <h:outputText value="#{map.value}" />
        </rich:column>

    </c:forEach>

</rich:extendedDataTable>

输出:

Table output via source code

第一列正确输出第一张地图的键。 第二列(用于调试)正确输出地图结构(当我将.keySet()应用于结构时,我会获得所有正确的键)。

使用:jstl 1.2.0,jsf 2.1 - mojarra,richfaces 4.x,tomcat 7.

更新

如上所述here< c:forEach>无法访问< rich:dataTable>属性,因此无法使用key。这有什么简单的解决方法吗?

0 个答案:

没有答案