Пользовательский контроллер ошибок Spring Boot показывает неправильное исключение - PullRequest
0 голосов
/ 14 января 2020

Если я выбрасываю новое исключение («тестирование 123») в SB, я получаю ожидаемое исключение:

Вт 14 января 12:25:44 CAT 2020 Произошла непредвиденная ошибка (тип = Внутренняя ошибка сервера, статус = 500). тестирование 123 ....................

Затем я добавляю config: server.error.whitelabel.enabled=false Затем я реализую собственный контроллер ошибок - MyCustomController, который реализует ErrorController, с методом:

@RequestMapping("/error")
public String handleError(HttpServletRequest request, Model model, Exception e)

и я создаю соответствующие файлы обработчика.

Затем я снова запускаю свою страницу, и Исключение, которое передается в handleError выше, НЕ МОЕ исключение, но универсальное c исключение Spring:

java .lang.Exception в java .base / jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0 (собственный метод) в java .base /jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) в java .base / jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance * (делегированиеConstructorAccessor) /java.lang.reflect.Constructor.newInstance(Constructor.java:490) в org.springframework.beans.BeanUtils.instantiateClass (BeanUtils. java: 172) в org.springframework.web.method.antation .ModelAttribu teMethodProcessor.constructAttribute (ModelAttributeMethodProcessor. java: 256) в org.springframework.web.method.annotation.ModelAttributeMethodProcessor.createAttribute (ModelAttributeMethodProcessor.hob. 10b. annotation.ServletModelAttributeMethodProcessor.createAttribute (ServletModelAttributeMethodProcessor java:. 84) в org.springframework.web.method.annotation.ModelAttributeMethodProcessor.resolveArgument (ModelAttributeMethodProcessor java:. 139) в org.springframework.web.method.support.HandlerMethodArgumentResolverComposite. resolArgument (HandlerMethodArgumentResolverComposite. java: 124) в org.springframework.web.method.support.InvocableHandlerMethod.getMethodArgumentValues ​​(InvocableHandlerMethoet. java: 138) в org.springframework.web.servlet. mvc .method.annotation.ServletInvocableHandlerMethod.invokeAndHandle (ServletInvocableHandlerMethod. java: 102) в ............................. обрезается.

Я не могу понять, почему она не показывает правильную ошибку.

Пользовательская страница ошибки не имеет смысла, если она просто показывает ту же ошибку generi c независимо от того, что вызвало исключение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...