===========================================================================
Just to make it clear, as I understood from the earlier mails:
(1) if you use value binding (JSP attribute "value") this binding
will not be updated until UpdateModel Phase
That's correct.
Note that this occurs *after* value change events are broadcast, since this happens at the end of Process Validations phase (for non-immediate components) or Apply Request Values phase (if you have immediate="true" on this component). Therefore, calling getValue() on the component, in a value change listener or method, should see the old value.
(2) if you use component binding (JSP attribute "binding") the binding
must occur in the Restore View Phase (component and all it's
attributes)
That is also correct.
At the end of Restore View phase, the component should have exactly the set of attribute and property values that it had at the end of rendering the previous response. *And*, if you used the binding attribute, the property setter in your backing bean must have been called, so that your code has a reference to exactly the same component instance as the one that was restored by JSF.
In either case, you *should* be able to rely on the source component in a value change event being == to the component in the component tree that fired that event.
Craig

