validate

If a submittedValue not passed in, retrieve the submitted value with getSubmittedValue(). If this returns null, exit without further processing.

Convert the submitted value into a "local value" of the appropriate data type

Validate the local value

If the valid property of this component is still true, retrieve the previous value of the component (with getValue()), store the new local value using setProperty("value", ). A call to setValue will queue a ValueChangeEvent if the value is new.