JBoss.orgCommunity Documentation
The <rich:ajaxGraph> component allows to register Hibernate Validators for multiple input components.
Table 6.49. rich : graphValidator attributes
Attribute Name | Description |
---|---|
binding | The attribute takes a value-binding expression for a component property of a backing bean |
id | Every component may have a unique id that is automatically created if omitted |
profile | profile |
rendered | If "false", this component is not rendered |
summary | summary |
value | value |
Table 6.50. Component identification parameters
Name | Value |
---|---|
component-type | org.richfaces.graphValidator |
component-class | org.richfaces.component.html.HtmlgraphValidator |
component-family | org.richfaces.graphValidator |
renderer-type | org.richfaces.graphValidatorRenderer |
tag-class | org.richfaces.taglib.graphValidatorTag |
To create the simplest variant on a page use the following syntax:
Example:
...
<h:outputText value="Name:" />
<h:inputText value="#{userBean.name}" id="name" required="true">
<f:validateLength minimum="3" maximum="12"/>
<rich:graphValidator event="onblur"/>
</h:inputText>
...
Example:
import org.richfaces.component.html.HtmlCalendar;
...
HtmlgraphValidator mygraphValidator= new HtmlgraphValidator();
...
The <rich:graphValidator> component behaves basically the same way as the <rich:beanValidator> The deference between these two components is that in order to validate some input data with a <rich:beanValidator> component, it should be a nested element of an input component, whereas <rich:graphValidator> wraps multiple input components and validates the data received from them.
The following example demonstrate a pattern of how the <rich:graphValidator> can be used.
...
<rich:graphValidator>
<h:panelGrid columns="3">
<h:outputText value="Name:" />
<h:inputText value="#{validationBean.name}" id="name">
<f:validateLength minimum="2" />
</h:inputText>
<rich:message for="name" />
<h:outputText value="Email:" />
<h:inputText value="#{validationBean.email}" id="email" />
<rich:message for="email" />
</h:panelGrid>
</rich:graphValidator>
...
The data validation can be also performed using Hibernate Validator, the same way as it is done with <rich:beanValidator> .
The components's architecture provides an option to bind the component to a managed bean, which is done with the <value> attribute. The attribute ensures that the entered data is valid after the model is updated by revalidating the bean properties.
Please look at the example below.
...
<rich:graphValidator value="#{dayStatistics}">
<h:outputText value="#{pt.title}" /><
<rich:inputNumberSpinne minValue="0" maxValue="24" value="#{pt.time}" id="time">
</rich:inputNumberSpinner>
<rich:message for="time" />
</rich:graphValidator>
...