foreach只渲染第一个细胞

时间:2014-01-23 12:42:13

标签: jsf jstl panelgrid

这个问题让我完全陷入困境。我只是在panelgrid的第一个单元格中渲染了一些东西。

将呈现第一行中list [0]的值。如果我将第一个单元格更改为保持列表[1],那么将显示该值。迭代器给了我两行空值。我肯定知道有两行返回有效值。

它不使用h:datatable进行操作。有人知道为什么会这样吗?

尝试这将产生价值

<c:forEach var="list" items="#{serviceSeries.getClubAverages(club.name, st, calendarBean)}">
                <h:outputText value="   #{list[0] }" />
                <h:outputText value="value" />
            </c:forEach>

<h:panelGrid columns="8" border="1" cellpadding="3">
            <h:outputText value="Namn" />
            <h:outputText value="Serier" />
            <h:outputText value="Total" />
            <h:outputText value="Snitt" />
            <h:outputText value="Hcp 70% - 200" />
            <h:outputText value="Hcp 80% - 200" />
            <h:outputText value="Hcp 70% - 220" />
            <h:outputText value="Hcp 80% - 220" />

            <c:forEach var="list" items="#{serviceSeries.getClubAverages(club.name, st, calendarBean)}">
                <h:outputText value="   #{list[0] }" />
                <h:outputText value="   #{list[1] }" />
                <h:outputText value="#{list[2] }" />
                <h:outputText value="#{list[3]}"/>
                <h:outputText value="   #{list[4] }" />
                <h:outputText value="   #{list[5] }" />
                <h:outputText value="   #{list[6] }" />
                <h:outputText value="   #{list[7] }" />
            </c:forEach>

            </h:panelGrid>

java代码:

private List CalculateAveragesClub(List results)
    {
                ArrayList alResults = new ArrayList();

    //Calculates some stuff and return two rows with 8 columns in
        alResults.add(playerInfo);
        System.out.println(playerInfo[0]);
        return alResults;
    }

0 个答案:

没有答案