if (viewState.isValid() && !viewState.skipUpdate()) {  updateDomain(collector, viewState); } }
allValid = allValid && viewState.isValid(); anySkip = anySkip || viewState.skipUpdate(); }  if (allValid && !anySkip) { updateDomain(viewStates);
    public ActionForward doLifeCycle(HttpServletRequest request) throws Exception {                EditRequest editRequest = new EditRequest(request);        List<IViewState> viewStates = editRequest.getAllViewStates();        for (IViewState viewState : viewStates) {            HtmlComponent component = restoreComponent(viewState);                        viewState.setSkipUpdate(false);            viewState.setCurrentDestination((ViewDestination) null);                        ComponentCollector collector = null;                        viewState.setUpdateComponentTree(true);            while (viewState.getUpdateComponentTree()) {                viewState.setUpdateComponentTree(false);                                collector = new ComponentCollector(viewState, component);                updateComponent(collector, editRequest);                                runControllers(collector, viewState);                component = viewState.getComponent();            }                if (! viewState.skipUpdate()) { // EXPERIMENTAL                viewState.setValid(validateComponent(viewState, component, viewState.getMetaObject()));                    if (viewState.isValid()) {                    // updateMetaObject can get convert errors                    viewState.setValid(updateMetaObject(collector, editRequest, viewState));                }                            if (viewState.isValid() && !viewState.skipUpdate()) {                    // updateDomain can get convert errors                    updateDomain(collector, viewState);                }            }        }                ViewDestination destination = getDestination(viewStates);        prepareDestination(viewStates, editRequest);        return buildForward(destination);    }