У меня есть классы мультипликаторов, аннотированные с помощью @ControllerAdvice, каждый из которых имеет метод @ExceptionHandler.
Один обрабатывает Exception с намерением, чтобы, если не найден более конкретный обработчик, это должно использоваться.
Печально Spring MVC, кажется, всегда использует наиболее общий случай (Exception), а не более конкретные (IOException например).
Это так, как можно было бы ожидать от Spring MVC? Я пытаюсь подражать шаблону от Джерси, который оценивает каждый ExceptionMapper (эквивалентный компонент), чтобы определить, насколько далеко объявленный тип, который он обрабатывает, - это исключение, которое было выбрано, и всегда использует ближайшего предка.