我有以下控制器代码。这将在jquery选项卡式窗格中的表中显示前端的银行列表。当用户单击选项卡时,将调用/bankList.do。 bankList.jsp将在成功标签中呈现。
@RequestMapping(value = "/banksList", method = RequestMethod.GET)
public ModelAndView banksList() throws Exception {
BankList banksList = bankService.list();
return new ModelAndView("banksList", "banksList", banksList.getBanks());
}
我不知道如何处理在bankend中抛出的错误/异常。 当银行结束时出现异常时,我想向用户显示以下文本“与后端通信时出错,请稍后再试”。不在选项卡式窗格中显示表。如何在上述控制器中进行更改以实现错误功能。
答案 0 :(得分:2)
您可以定义@Exceptionhandler
- 带注释的方法来处理服务层异常。请参阅16.11 Handling exceptions,尤其是16.11.2 @ExceptionHandler
答案 1 :(得分:1)
这是一种方法,将这样的内容添加到控制器类......
@ExceptionHandler({SomeException.class, SomeOtherException.class})
public String doException(final Exception e, final HttpSession session) {
LOGGER.error("something failed", e);
session.setAttribute(UPLOAD_STATUS, false);
session.setAttribute(ERROR_MESSAGE, e.getMessage());
return "redirect:" + VIEW_NAME;
}