我正在创建一个facelet组件,我打算在一个页面中包含多次。
我需要在我的组件中定义一个a4j:outputPanel标签并给它一个id,这样就可以通过ajax reRender这个outputPanel。但是facelets似乎没有处理这种情况,因为抛出了“duplicateId Exception”。我部分地理解为什么会这样。我在一个页面中包含了几个组件,但每个组件都包含具有相同硬编码ID的outputPanel。
答案 0 :(得分:1)
实际创建子视图会导致partialTriggers出现问题。 < UI:成分> < f:subview id =“#{id}”> ....组件代码 < / F:子视图> < / UI:成分>
答案 1 :(得分:0)
这是一种通过将id传递给组件来避免硬编码ID的方法,例如:
ac:testComponent id =“someId”
在facelet组件中:
h:outputText id =“#{id} _outputText”
问题是trinidad不支持partialTriggers属性的这种EL语言。如果有人知道如何做到这一点,请在本网站上发布解释。