Details
-
Improvement
-
Status: Resolved
-
Minor
-
Resolution: Fixed
-
2.0.0-beta-1
-
None
Description
As discussed in this MyFaces core issue:
MYFACES-3036 Support SKIP_ITERATION FacesContext property
The JSF-314 EG (and members of Mojarra and MyFaces) agreed to use the "javax.faces.visit.SKIP_ITERATION" FacesContext property (during the 2.0 timeframe) to indicate that a tree visit should not trigger iteration in iterating components like UIData/UIRepeat. Opening this issue to request that iterating Trinidad components (UIXIterator, UIXCollection) honor this property as well.
Note that Trinidad already handles this centrally in UIXComponent.visitChildren:
// determine whether this visit should be iterating. If it shouldn't, don't
// even call the protected hook. We currently don't iterate during the
// restore view phase when we are visiting all of the components.
boolean noIterate = (visitContext.getIdsToVisit() == VisitContext.ALL_IDS) &&
(context.getCurrentPhaseId() == PhaseId.RESTORE_VIEW);
doneVisiting = (noIterate)
? uixParentComponent._visitAllChildren(visitContext, callback)
: uixParentComponent.visitChildren(visitContext, callback);
This issue is requesting that we enhance the above "noIterate" test to also check the SKIP_ITERATION property.