J'ai eu le même problème, mais le simple fait d'activer la validation n'a pas fonctionné pour moi, cela a fonctionné à la fois avec JPA et MongoDb pour éviter que quelqu'un d'autre ne dépense des années à ce sujet. Non seulement cela fait fonctionner la validation, mais j'obtiens une belle erreur 400 reposante plutôt que la valeur par défaut 500.
J'ai dû ajouter ceci à mes dépendances build.gradle
compile('org.hibernate:hibernate-validator:4.2.0.Final')
et cette classe de configuration
@Configuration
public class CustomRepositoryRestConfigurerAdapter extends RepositoryRestConfigurerAdapter {
@Bean
public Validator validator() {
return new LocalValidatorFactoryBean();
}
@Override
public void configureValidatingRepositoryEventListener(ValidatingRepositoryEventListener validatingListener) {
validatingListener.addValidator("afterCreate", validator());
validatingListener.addValidator("beforeCreate", validator());
validatingListener.addValidator("afterSave", validator());
validatingListener.addValidator("beforeSave", validator());
}
}