Reputation: 535
There is any way to enable javax.validation.constraints (like @NOTNULL annotation in the model) using arangodb-spring-data?
For example in mongodb-spring-data you must add a Configuration Class likes:
@Configuration
public class ValidationConfiguration {
@Bean
public ValidatingMongoEventListener validatingMongoEventListener() {
return new ValidatingMongoEventListener(validator());
}
@Bean
public LocalValidatorFactoryBean validator() {
return new LocalValidatorFactoryBean();
}
}
I tried simply using the annotations without any configuration but doesn't work
Upvotes: 2
Views: 180
Reputation: 315
There is no thing like ValidatingMongoEventListener
in Spring Data ArangoDB. You must validate entities yourself before saving them to the DB.
UPDATE:
You can validate your objects like this:
Use javax.validation.Valid
annotation on a controller method:
@PostMapping("/myobjects")
@ResponseBody
public ResponseEntity<?> saveMyObject(@Valid @RequestBody MyObject obj) {
repo.save(obj);
return ResponseEntity.status(HttpStatus.CREATED).build();
}
Or do it manually:
@Autowired
private javax.validation.Validator validator;
public void saveMyObject(MyObject obj) {
Set<ConstraintViolation<MyObject>> violations = validator.validate(obj);
if (!violations.isEmpty()) {
throw new ConstraintViolationException(violations);
}
repo.save(obj);
}
Upvotes: 2