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.
|Status||Open [ 1 ]||Patch Available [ 10002 ]|
|Status||Patch Available [ 10002 ]||Resolved [ 5 ]|
|Fix Version/s||2.0.0-beta-2 [ 12316092 ]|
|Resolution||Fixed [ 1 ]|
|Assignee||Andy Schwartz [ andy.schwartz ]|