MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Reste des données du démarreur de démarrage à ressort, la contrainte @Notnull ne fonctionne pas

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());
   }
}