Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

"Turn off" bean validation programmatically (javax.validation.constraints)

For example, we have some entity in whitch several fields are validating with annotation @Pattern. This entity is used everywhere in project, but only in one place we need to "turn off" this validation.

Is there some way to do it programmatically or it is impossible?

like image 841
Mary Ryllo Avatar asked Aug 22 '13 13:08

Mary Ryllo


1 Answers

You can use validation groups for this:

@Min(value = 18, message = "You have to be 18", groups = AdultsGroup.class)
public int age;

and then :

constraintViolations = validator.validate( person, AdultsGroup.class );

for checking min age, or:

constraintViolations = validator.validate( person, null );

for not checking this constraint.

You can read more details here: http://beanvalidation.org/1.1/spec/#constraintdeclarationvalidationprocess-groupsequence

like image 113
konradkg Avatar answered Oct 03 '22 18:10

konradkg