Package javax.faces.component.visit

APIs for traversing a user interface component view.


Interface Summary

A simple callback interface that enables taking action on a specific UIComponent (either facet or child) during a component tree visit.


Class Summary

A context object that is used to hold state relating to performing a component tree visit.


Provide for separation of interface and implementation for the VisitContext contract.


Provides a simple implementation of VisitContext that can be subclassed by developers wishing to provide specialized behavior to an existing VisitContext instance.


Enum Summary

An enum that specifies hints that impact the behavior of a component tree visit.


An enum that specifies the possible results of a call to VisitCallback.visit(javax.faces.component.visit.VisitContext, javax.faces.component.UIComponent).


Package javax.faces.component.visit Description

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.

Copyright 2002-2009 Sun Microsystems, Inc. All Rights Reserved.