Почему ControllerAdvice работает через раз при компиляции?

У меня есть контроллер -

@ControllerAdvice
class GlobalDefaultExceptionHandler {

    @ResponseStatus(HttpStatus.NOT_FOUND)
    @ExceptionHandler(NoHandlerFoundException.class)
    public String handle(Exception ex, Model model) {
        model.addAttribute("message", "massage");
        return "notfound";
    }

    @ResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR)
    public String handleAllException(Exception e, Model model) {
        model.addAttribute("message", "massage");
        return "notfound";
    }
}

И есть Инициализатор -

public class AppInitializer implements WebApplicationInitializer {

    @Override
    public void onStartup(ServletContext sc) throws ServletException {
        AnnotationConfigWebApplicationContext appContext = new AnnotationConfigWebApplicationContext();
        appContext.register(SpringConfig.class);

        ServletRegistration.Dynamic dispatcher = sc.addServlet("SpringDispatcher", new DispatcherServlet(appContext));
        dispatcher.setInitParameter("throwExceptionIfNoHandlerFound", "true");
        dispatcher.setLoadOnStartup(1);
        dispatcher.addMapping("/");
        
    }

}

Приложение ловит ошибки через раз. Например если я скомпилил и запустил приложение на сервере, а оно не ловит ошибку 404, то я просто заново компилю пока оно не заработает. Может кто подсказать в чем проблема ?


Ответы (0 шт):