gpt4 book ai didi

java - @ExceptionHandler 未触发

转载 作者:太空宇宙 更新时间:2023-11-04 07:27:57 26 4
gpt4 key购买 nike

这个问题在 Google 领域已被问过几次,但我似乎无法将这些解决方案应用于我的情况。我的 J2EE 应用程序使用 Spring,之前我使用 SimpleMappingExceptionResolver 来拦截异常,以便为用户显示友好的错误页面。我团队中的一个人有自己的包,并使用扩展的 Exception 类作为向用户传达验证错误的工具。所以现在每次用户输入无效数据时,都会触发异常页面。他拒绝更改他的代码(尽管我认为他应该这样做),所以现在我被迫对特定于包或 Controller 的事情进行错误处理。

我尝试利用 @ExceptionHandler 注释来执行此操作,但它似乎没有被触发。我究竟做错了什么?我期望调用 dmapproval 来返回 applicationError View 。

这是我的 Controller :

@Controller
public class ExecutiveApprovalController {

/*omitted stuff*/

@ExceptionHandler(Exception.class)
public String routToErrorHandler(Exception anExc) {
return "applicationError";
}

@RequestMapping(value = "/dmapproval", method = RequestMethod.GET)
public String dmApproval(Model model, HttpServletRequest request) throws Exception {

throw new RuntimeException(); // just for testing exception logic
}

/*omitted stuff here, too*/
}

感谢您的帮助!!

最佳答案

你的代码片段看起来不错;你的代码和我正在工作的代码之间的唯一区别是我像这样注释异常处理程序方法:

@ExceptionHandler(Throwable.class)

顺便说一句;这远不如使用 SimpleMappingExceptionResolver 优雅(听起来您已经知道了!)。我会要求你这个流氓队友重新考虑他的验证方法并仅在特殊情况下使用异常;)

关于java - @ExceptionHandler 未触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18237128/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com