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.