- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我试图获得与在 Controller 的对象参数中使用@Valid 时相同的结果。当对象无效时,我的具有 @RestControllerAdvice 的 ExceptionHandlerController 会抛出一个异常 (MethodArgumentNotValidException)。
在我的例子中,我想验证一个对象,但我只能在服务层验证它。该对象具有 bean 验证注释,因此我尝试以编程方式为我的 ExceptionHandlerController 处理它抛出 MethodArgumentNotValidException,但我没有成功。
到目前为止我有这个:
private void verifyCard(CardRequest card) {
BeanPropertyBindingResult result = new BeanPropertyBindingResult(card, "card");
SpringValidatorAdapter adapter = new SpringValidatorAdapter(this.validator);
adapter.validate(card, result);
if (result.hasErrors()) {
try {
throw new MethodArgumentNotValidException(null, result);
} catch (MethodArgumentNotValidException e) {
e.printStackTrace();
}
}
}
第一个参数来自 MethodParameter 类型,我无法创建此对象。这是处理我的问题的最佳方式吗?
编辑 1:
我无法删除 try/catch block 。当我删除它时,出现编译错误。如何变通?
最佳答案
您已经通过 catch
block 处理了它,您应该删除 try-catch
以让您的全局处理程序捕获它。
然后指定如下方法
private void verifyCard(CardRequest card) throws MethodArgumentNotValidException
关于java - 如何正确抛出 MethodArgumentNotValidException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49339406/
我的实体类在其中一个字段上使用 hibernate 的 @NotNull 进行注释。我正在捕获 @ExceptionHelper 中的异常。我的问题是我想访问无效字段的值,以便我可以将其添加到记录器中
我试图获得与在 Controller 的对象参数中使用@Valid 时相同的结果。当对象无效时,我的具有 @RestControllerAdvice 的 ExceptionHandlerControl
我的 Controller 如下所示: @RequestMapping(value = "/cars/{types}", method = RequestMethod.PUT, hea
我正在使用 javax.validation.Size 注释来执行字符串大小验证。 @Data public class EventRequestBean { @Size( max = 40
我有以下@ControllerAdvice: @ControllerAdvice public class ExceptionHandlingController { @ExceptionHa
如何从 MethodArgumentNotValidException 中删除过多的信息并仅保留所需的 “默认消息” ?? 我正在尝试验证注释 - @NotNull、@NotBlank 和 @NotE
我正在尝试根据 bean 上设置的约束来验证我的表单。我使用的Spring-MVC版本是3.2.4。问题是默认的 Spring validator 不会验证所有约束;仅限相同类型的。 我有以下 Con
当我在 javax.validation 中使用 @Valid 注释验证 bean 时,对于某些对象,我收到 ConstraintViolationException ,对于某些对象,我收到 Cons
我正在使用 spring MVC 测试:在我的测试用例中,我传递了一个无效的 Bar 对象(年龄为零)。正在抛出 MethodArgumentNotValidException,但它嵌套在 Neste
我正在使用 spring boot,并且我有一个带有方法的 RestController addBook(@Validated @RequestBody BookDto bookDto) BookDt
我想将@Valid 注释与@RequestBody 注释一起使用,并在我自己的方法中处理错误,该方法使用@ExceptionHandler 注释进行注释。我希望始终返回 ReponseEntity 的
我有一个带有一些验证的简单 Spring Rest Controller 。我的理解是验证失败会抛出 MethodArgumentNotValidException。但是,我的代码反而抛出 BindE
我有一个 Spring Controller ,它使用 hibernate validator 验证传入的请求。 当请求无效时,MethodArgumentNotValidException 被 va
我正在使用 Spring 在 Kotlin 中制作简单的应用程序,但我遇到了验证问题。 我有这个实体类: @Entity @Table(name = "category") data class Ca
我使用的是 Spring Boot v2.2.10 和 Spring v5.2.9。我创建了一个带有 @Valid @RequestBody 注释的 Rest Controller 。验证工作正常(当
我使用的是 Spring Boot v2.2.10 和 Spring v5.2.9。我创建了一个带有 @Valid @RequestBody 注释的 Rest Controller 。验证工作正常(当
我知道 Exception 是所有异常的父级,但我认为当您为特定异常类设置 @ExceptionHandler 时,它应该处理该特定异常。 也许您可以指出我在以下代码中遗漏的内容,以便 MethodA
我正在尝试使用 @ControllerAdvice 处理 MethodArgumentNotValidException,如下所示: @ControllerAdvice public class Re
我是一名优秀的程序员,十分优秀!