Wiki

Clone wiki

Oracle JSF Expert 1Z0-896 / Identify best suited standard validator and implement

Identify best suited standard validator and implement

f:validateRequired

<h:inputText value="#{myBean.mandatoryField}">
    <f:validateRequired />
</h:inputText>

f:validateRegex

<h:inputText value="#{myBean.email}">
    <f:validateRegex pattern="^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}$." />
</h:inputText>

f:validateDoubleRange

<h:inputText value="#{myBean.double}">
    <f:validateDoubleRange maximum="10.0" minimum="5.0" />
</h:inputText>

f:validateLongRange

<h:inputText value="#{myBean.long}">
    <f:validateLongRange maximum="100" minimum="5" />
</h:inputText>

f:validateBean

<f:validateBean disabled="true">
    <!-- nested components with bean validation are now disabled -->
</f:validateBean>

f:validateLength

<h:inputText value="#{myBean.password}">
    <f:validateLength maximum="20" minimum="8" />
</h:inputText>

NB If validators conflict with each other the first is applied. The example below will produce the standard validation error for the first validator, i.e. numbers between 5 and 10 are allowed, anything less than 5 or greater than 10 isn't

<h:inputText value="#{myBean.long}">
    <f:validateLongRange maximum="10" minimum="5" />
    <f:validateLongRange maximum="100" minimum="50" />
</h:inputText>

Updated