Имах същия проблем, но само активирането на валидиране не работи за мен, това работи както с JPA, така и с MongoDb, за да спести някой друг да прекарва години за това. Това не само прави валидирането да работи, но получавам хубава спокойна грешка 400, а не 500 по подразбиране.
Трябваше да добавя това към моите build.gradle зависимости
compile('org.hibernate:hibernate-validator:4.2.0.Final')
и този конфигурационен клас
@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());
}
}