[ http://issues.apache.org/jira/browse/TOMAHAWK-657?page=comments#action_12432621 ] Michael Lipp commented on TOMAHAWK-657: ---------------------------------------
I just found that there is a little bit more to it. encodeChildren is called by the parent component before renderScroller is called. Thus the added command links are rendered twice: once because they are children and the second time as part of the scroller. Therefore, the HtmlDataScrollerRenderer must also override encodeChildren (and do nothing there). > HtmlDataScrollerRenderer.renderScroller causes duplicate Ids > ------------------------------------------------------------ > > Key: TOMAHAWK-657 > URL: http://issues.apache.org/jira/browse/TOMAHAWK-657 > Project: MyFaces Tomahawk > Issue Type: Bug > Components: Data Scroller > Affects Versions: 1.1.5-SNAPSHOT > Reporter: Michael Lipp > Priority: Blocker > > HtmlDataScrollerRenderer.renderScroller modifies the sroller component's > structure by adding command links to it. This works only once. However, it is > perfectly legal to invoke lifecycle.render several times *without* calling > lifecycle.execute in between (that's what portals to for portlets that have > not participated in the current action). > Because the component structure is reused rather than recreated in this case, > the added command links from the previous render invocation are still there. > Adding the command links again eventually leads to duplicate ids. > Workaround (and probably fix as well): clear list of children at the start of > renderScroller. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira
