<dependencies>
<dependency>
<groupId>org.apache.bval</groupId>
<artifactId>bval-jsr</artifactId>
<version>2.0.3</version>
</dependency>
</dependencies>
public class User {
@NotNull
private String name;
@Email
private String email;
}
import org.apache.bval.jsr303.ApacheValidatorFactory;
import javax.validation.ConstraintViolation;
import javax.validation.Validation;
import javax.validation.Validator;
import javax.validation.ValidatorFactory;
import java.util.Set;
public class ValidationUtils {
private static ValidatorFactory factory = Validation.byProvider(ApacheValidatorFactory.class)
.configure()
.buildValidatorFactory();
public static <T> Set<ConstraintViolation<T>> validate(T object) {
Validator validator = factory.getValidator();
return validator.validate(object);
}
}
User user = new User();
Set<ConstraintViolation<User>> violations = ValidationUtils.validate(user);
for (ConstraintViolation<User> violation : violations) {
System.out.println(violation.getPropertyPath() + ": " + violation.getMessage());
}