c:forEach in p:accordionPanel不工作当item是一个带p的函数:accordionPanel var作为参数

时间:2016-08-24 12:06:32

标签: jsf primefaces

我有一个代码xhtml:

...
<p:accordionPanel var="mVar" value="#{someBean.someList}" >
    <p:tab>
        <f:facet name="title">
            <h:outputText value="#{mVar.id} - #{mVar.name}"/>
            ...
        </f:facet>
        <h:panelGrid>
            ...
            <c:forEach items="#{someBean.someFunctionReturningList(mVar.id)}" var="mImg">
                <h:outputText value="#{mImg}"/>
            </c:forEach>
        </h:panelGrid>
    </p:tab>
</p:accordionPanel>
...

和java代码:

public List<String> listAllImagesForCampaign(BigInteger id) {
    List<String> allImages = new ArrayList<String>();
    ...
    return allImages;
}

问题是,当mVar.id为64时,BigInteger id包含值0。 是否有一个我无法捕捉到错误或错误的错误?

1 个答案:

答案 0 :(得分:0)

将c:forEach更改为ui:repeat解决了问题。

<ui:repeat value="#{someBean.someFunctionReturningList(mVar.id)}" var="mImg">