You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@myfaces.apache.org by "Michael Heinen (JIRA)" <de...@myfaces.apache.org> on 2006/11/22 16:29:04 UTC

[jira] Commented: (TOMAHAWK-596) Duplicate id exception for HtmlDataScrollerRenderer

    [ http://issues.apache.org/jira/browse/TOMAHAWK-596?page=comments#action_12451965 ] 
            
Michael Heinen commented on TOMAHAWK-596:
-----------------------------------------

This patch works also only in a subset of the usecases.
Pls see http://issues.apache.org/jira/browse/TOMAHAWK-768

If the underlying datamodel is updated via ajax and the number of the displayed pager links is increased (e,.g a display filter removed), then these links are not precessed correctly. I think you need static ids build from 1 til paginatorMaxPages and even dummyLinks if your model contains less pages or if the scroller is even not rendered because the model contains only a single page.

What about the children ?
Is the summary still encoded or is it skipped due to the empty encodeChildren method?
I did not find a solution for this except splitting the datascroller into two tags with separate renderes.

Michael


> Duplicate id exception for HtmlDataScrollerRenderer
> ---------------------------------------------------
>
>                 Key: TOMAHAWK-596
>                 URL: http://issues.apache.org/jira/browse/TOMAHAWK-596
>             Project: MyFaces Tomahawk
>          Issue Type: Bug
>          Components: Data Scroller
>    Affects Versions: 1.1.3
>         Environment: Linux, Windows
>            Reporter: Ryan Wynn
>         Attachments: HtmlDataScrollerRenderer.java, HtmlDataScrollerRenderer.java.example, HtmlDataScrollerRenderer.patch
>
>
> In a portlet environment a non-faces request produces an exception when the faces tree is rendered if the faces tree contains a DataScroller component.  The HtmlDataScroller renderer actually renders its children twice in this case, once in the encodeChildren method and once in the encodeEnd method.  Since rendering of the children is taken care of in encodeEnd I made the encodeChildren method a no-op.  Also, although the  CommandLinks which are rendered as children are marked as transient, they see to stick around.  I put a check in the getLink methods to make sure that the links are not added twice.  This seems to fix the duplicate id exception, but it might be necessary to further investigate why they are sticking around in the first place.

-- 
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