[ https://issues.apache.org/jira/browse/MYFACES-2428?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12784372#action_12784372 ]
Michael Kurz commented on MYFACES-2428: --------------------------------------- My original problem is fixed now, but I still have some id issues from time to time. I'll report back if I know more. > Id generation for facelets cause problems with htmlunit 2.4 or lower > -------------------------------------------------------------------- > > Key: MYFACES-2428 > URL: https://issues.apache.org/jira/browse/MYFACES-2428 > Project: MyFaces Core > Issue Type: Task > Components: JSR-314 > Reporter: Leonardo Uribe > Assignee: Leonardo Uribe > > The id generation strategy is critical to allow partial state saving works > correctly, because all component state is saved on a map, and the clientId is > the primary key for it. > Actually, we just pass the facelet generated id for each tag as a seed for > UniqueIdVendor.createUniqueId(FacesContext context, java.lang.String seed), > This id cause an exception in htmlunit version 2.4 or lower (in 2.5 this was > fixed). > The objective of UniqueIdVendor interface is reduce the variation when ids > are generated. The ideal case is that for any facelet page the generated ids > assigned to components should remain the same no matter if the model changes > by some reason. > The problem starts when it is used <c:forEach> or <c:if> tags, because its > behavior depends on the "model" state in a point of the time. The id > generated by facelets is depends on the facelet "alias" page name, a counter > id from CompilationManager. > We need to do multiple tests for worst case scenarios, and try to define an > strategy to reduce the variability of ids, providing proper "seeds" for it. > Suggestions are welcome -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.