Spring REST validation

Oleksandr Riznyk :

I have this REST API method

 @GetMapping
 public ResponseEntity doSome(@Valid DataTypeRequest dataType){}

and ConstraintValidator that validates DataTypeRequest.

Now I should implement HandlerMethodArgumentResolver for DataTypeRequest, so my REST API method will look like:

@GetMapping public ResponseEntity doSome(@Valid @DataTypeRequestAnnotation DataTypeRequest dataType){}

And after this changes HandlerMethodArgumentResolver works but ConstraintValidator doesn't. So how can I validate my entity after HandlerMethodArgumentResolver.

zymarev :

You can check parameter for @Valid and invoke validate() method.

if (parameter.hasParameterAnnotation(Valid.class){            
    binderFactory
        .createBinder(webRequest, resolvedObject, "resolvedObjectLogicalName")
        .validate ();
}

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=216372&siteId=1