我有一个页面有 2ui:repeat
来迭代一个复杂的集合。我需要添加commandlinks
它将更新页面上的一些数据而不刷新整个页面。代码如下:
<h:panelGroup id="panel1">
#{backBean.getNumber()}
</h:panelGroup>
<h:form>
<a4j:commandlink action="#{backBean.increaseNumber()}" reRender="panel1" />
</h:form>
<ui:repeat value="#{masterlist}" var="list">
<ui:repeat value="#{list}" var="element">
#{element.description}
</ui:repeat>
</ui:repeat>
我可以看到该increaseNumber()
方法被调用并且数字被更新,但是 panel1 没有重新渲染。如果我删除一个ui:repeat
标签,然后它将起作用。我在网上做了研究,似乎嵌套有问题ui:repeat
,但我找不到任何解决方案。