@Documented @Target(value=TYPE) @Retention(value=RUNTIME) public @interface GwtValidation
javax.validation.Validator explicitly listing the classes that can be
validated in GWT.
Define the Validator you want, explicitly listing the classes and groups you want to validate.
@GwtValidation(value = {MyBean.class, MyOther.class},
groups = {Default.class, OtherGroup.class})
public interface MyValidator extends javax.validation.Validator {
}
Create and use the validator.
MyValidator validator = GWT.create(MyValidator.class); MyBean bean = new MyBean(); ... Set<ConstraintViolation<MyBean>> violations = validator.validate(bean);
You must list all validation groups you are using (as well as groups making up a group
sequence)– unless you are only using the Default group, in which case you may omit the
"groups" field of the GwtValidation annotation.
NOTE: Validation is done using only the Constraints found on the Classes listed in the annotation. If you have
class MyBean {
@Null
String getName() {
return name;
}
}
class MySubBean extends MyBean {
@Size(min = 5)
String getName() {
return super.getName();
}
}
And then create your ValidatorFactory using
@GwtValidation(MyBean.class, MyOther.class)}
but call validator with the subclass like
MySubBean bean = new MySubBean(); Set<ConstraintViolation<MyBean>> violations = validator.validate(bean);
The Size constraint will not be validated.
Instead make sure you list the all BeanTypes that will be directly validated in the
GwtValidation annotation.
public abstract Class<?>[] value
Validator.public abstract Class<?>[] groups
Validator. The default value
is Default. An empty array is illegal.Copyright © 2015–2016. All rights reserved.