Моя цель - по-разному обрабатывать NoHandlerFoundException
для определенных шаблонов URL.
Допустим, у меня есть Controller
с шаблонами URL для общедоступных и admin URL. ,Если NoHandlerFoundException
встречается в шаблоне URL для public , я хочу обработать его в моем PublicController (и т. Д.).
Метод проб и ошибок, приведенный ниже, пытается поймать NoHandlerFoundException
с @ExceptionHandler
внутри контроллера не работает.
@Controller
@RequestMapping("/public/**")
public class PublicController {
@GetMapping("userAccount/")
public String showUserAccount() {
...
return "userAccount";
}
// this does not work
@ExceptionHandler(NoHandlerFoundException.class)
public ModelAndView handlePublicNoHandlerFoundException(final NoHandlerFoundException e) {
...
}
}
@Controller
@RequestMapping("/admin/**")
public class AdminController {
@GetMapping("adminAccount/")
public String showAdminAccount() {
...
return "adminAccount";
}
// this does not work
@ExceptionHandler(NoHandlerFoundException.class)
public ModelAndView handleAdminNoHandlerFoundException(final NoHandlerFoundException e) {
...
}
}