APIs for traversing a user interface component view.

The following example visits all nodes in the view.

1. UIViewRoot root = facesContext.getViewRoot();
2. root.visitTree(VisitContext.createVisitContext(context),
3. new VisitCallback() {
4. public VisitResult visit(VisitContext context,
5. UIComponent target) {
6. // take some action on target
7. return VisitResult.ACCEPT;
8. }
9. });

The following example visits two subtrees within the component view.

1. Set<String> toVisit = getSet("form1:optionsPanel", "form2:detailPanel");
2. UIViewRoot root = facesContext.getViewRoot();
3. root.visitTree(VisitContext.createVisitContext(context, toVisit, null),
4. new VisitCallback() {
5. public VisitResult visit(VisitContext context,
6. UIComponent target) {
7. // take some action on target
8. return VisitResult.ACCEPT;
9. }
10. });

Note that every child node of those two subtrees is visited.