Я обрабатываю исключения в spring с помощью @ExceptionHandler. Любое исключение, созданное контроллером, захватывается с помощью метода, аннотированного с помощью @ExceptionHandler, и действие принимается соответствующим образом. Чтобы избежать записи @exceptionHandler для каждого контроллера, я использую аннотацию @ControllerAdvice.
Все работает нормально, как ожидалось.
Теперь у меня есть фильтр (да, не перехватчик, для обработки определенного требования), который реализован с использованием делегированияFilterProxy и ContextLoaderListener.
Когда я выбрасываю одно и то же исключение из фильтра выше, он не поймал, как это делалось в случае контроллера. Он напрямую передается пользователю.
Что здесь не так?