是否有任何方法可以通过@ExceptionHandler 将多种错误类型放入一个对象中
Is there any method to put multiple error types into one objects by @ExceptionHandler
这是我第一次在Whosebug 提出问题。请问有没有一种方法可以通过@ExceptionHandler将多个错误类型同时抛回一个对象给用户?
例如用户请求服务时需要满足以下条件
(1) accountNo : required
(2) userDecision : @Pattern(regex="^[1|2]$")
但是,用户省略了accountNo(MissingServletRequestParameterException),输入userDecision为3(ContraintViolationException)。那我有没有可能丢回一个 Json 像
这样的对象
[
{
"error1":"your accnoutNo is empty",
"error2":"your decision is wrong"
}
]
同时给用户?
非常感谢,抱歉我的英语不好。
您可以实施自定义验证器 (https://docs.spring.io/spring/docs/4.1.x/spring-framework-reference/html/validation.html) 并在验证方法中拒绝这些值。
之后,您可以在处理 ValidationExceptions 的地方使用此验证器的 @ControllerAdvice 注释实现异常处理程序(扩展 ResponseEntityExceptionHandler)。
看看这个:也许有帮助
这是我第一次在Whosebug 提出问题。请问有没有一种方法可以通过@ExceptionHandler将多个错误类型同时抛回一个对象给用户?
例如用户请求服务时需要满足以下条件
(1) accountNo : required
(2) userDecision : @Pattern(regex="^[1|2]$")
但是,用户省略了accountNo(MissingServletRequestParameterException),输入userDecision为3(ContraintViolationException)。那我有没有可能丢回一个 Json 像
这样的对象 [
{
"error1":"your accnoutNo is empty",
"error2":"your decision is wrong"
}
]
同时给用户?
非常感谢,抱歉我的英语不好。
您可以实施自定义验证器 (https://docs.spring.io/spring/docs/4.1.x/spring-framework-reference/html/validation.html) 并在验证方法中拒绝这些值。
之后,您可以在处理 ValidationExceptions 的地方使用此验证器的 @ControllerAdvice 注释实现异常处理程序(扩展 ResponseEntityExceptionHandler)。
看看这个:也许有帮助