在我一直使用渲染时间标签(如 a4j:repeat、ui:repeat)之前,基于项目集合创建面板。所有这些都改变了,现在我必须使用 c:forEach 来代替。在每个面板上,我都会进行大量 AJAX 调用和页面的部分更新。这就是为什么我使用自定义 ID 来识别我想要更新的组件。所以我的渲染属性是这样的:
#{cc.clientId}:pnlRepeat:#{row}:radioAplicar
其中 pnlRepeat 是 id 属性,{#row} 是同一标签中的 rowKeyVar 属性。现在......当使用 c:forEach 时它们都不存在,因此,我得到了重复的 id 异常。我知道我可以使用 varStatus,并使用 #{row} Id 创建一个面板,但另一方面。JSF 不允许 id 属性评估 EL 表达式。什么是解决方法?非常感谢。