com.vaadin.data.validator
Class BeanValidator

java.lang.Object
  extended by com.vaadin.data.validator.BeanValidator
All Implemented Interfaces:
Validator, java.io.Serializable

public class BeanValidator
extends java.lang.Object
implements Validator

Vaadin Validator using the JSR-303 (javax.validation) annotation-based bean validation. The annotations of the fields of the beans are used to determine the validation to perform. Note that a JSR-303 implementation (e.g. Hibernate Validator or Apache Bean Validation - formerly agimatec validation) must be present on the project classpath when using bean validation.

Since:
7.0
Author:
Petri Hakala, Henri Sara
See Also:
Serialized Form

Nested Class Summary
protected static class BeanValidator.SimpleContext
          Simple implementation of a message interpolator context that returns fixed values.
 
Nested classes/interfaces inherited from interface com.vaadin.data.Validator
Validator.EmptyValueException, Validator.InvalidValueException
 
Constructor Summary
BeanValidator(java.lang.Class<?> beanClass, java.lang.String propertyName)
          Creates a Vaadin Validator utilizing JSR-303 bean validation.
 
Method Summary
protected  javax.validation.Validator getJavaxBeanValidator()
          Returns a shared Validator instance to use.
protected static javax.validation.ValidatorFactory getJavaxBeanValidatorFactory()
          Returns the underlying JSR-303 bean validator factory used.
 java.util.Locale getLocale()
          Gets the locale used for validation error messages.
 void setLocale(java.util.Locale locale)
          Sets the locale used for validation error messages.
 void validate(java.lang.Object value)
          Checks the given value against this validator.
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, toString
 

Constructor Detail

BeanValidator

public BeanValidator(java.lang.Class<?> beanClass,
                     java.lang.String propertyName)
Creates a Vaadin Validator utilizing JSR-303 bean validation.

Parameters:
beanClass - bean class based on which the validation should be performed
propertyName - property to validate
Method Detail

validate

public void validate(java.lang.Object value)
              throws Validator.InvalidValueException
Description copied from interface: Validator
Checks the given value against this validator. If the value is valid the method does nothing. If the value is invalid, an Validator.InvalidValueException is thrown.

Specified by:
validate in interface Validator
Parameters:
value - the value to check
Throws:
Validator.InvalidValueException - if the value is invalid

setLocale

public void setLocale(java.util.Locale locale)
Sets the locale used for validation error messages. Revalidation is not automatically triggered by setting the locale.

Parameters:
locale -

getLocale

public java.util.Locale getLocale()
Gets the locale used for validation error messages.

Returns:
locale used for validation

getJavaxBeanValidatorFactory

protected static javax.validation.ValidatorFactory getJavaxBeanValidatorFactory()
Returns the underlying JSR-303 bean validator factory used. A factory is created using Validation if necessary.

Returns:
ValidatorFactory to use

getJavaxBeanValidator

protected javax.validation.Validator getJavaxBeanValidator()
Returns a shared Validator instance to use. An instance is created using the validator factory if necessary and thereafter reused by the BeanValidator instance.

Returns:
the JSR-303 Validator to use


Copyright © 2000-2011 Vaadin Ltd. All Rights Reserved.