Внешние перенаправления в логике исключений не работают на Tomcat 8.5.39 - PullRequest
1 голос
/ 12 апреля 2019

Я настраиваю логику обработки исключений для многокомпонентного проекта со страницей с общими ошибками (которая находится в другой части проекта).Когда я пытался перенаправить на внешний URL-адрес при исключении, tomcat 8.5.39 вместо этого показывает ошибку по умолчанию.Забавно то, что в tomcat 8.5.38

это, кажется, прекрасно работает. Я перепробовал много разных методов обработки исключений, но все они, похоже, не работают для внешних перенаправлений., у меня есть что-то вроде этого в моем файле web.xml:

...
    <error-page>
        <error-code>404</error-code>
        <location>/error/error404</location>
    </error-page>
...

и для моего контроллера Spring,

@Controller
@RequestMapping(value = "/error")
public class ErrorHandler{
...
    @GetMapping(value = "error404")
    public String error404(){
        return "redirect:http://{myproject}/{404errorPage}";
    }
...
}

Я ожидаю, что этот код перенаправит пользователя на http://{myproject}/{404errorPage} когда возникает ошибка 404, которая прекрасно работает в tomcat 8.5.38.Но в 8.5.39 они, похоже, изменили логику обработки ошибок, и она отобразит страницу ошибок по умолчанию (страница браузера по умолчанию 404).

Любой ввод или идея будут чрезвычайно полезны.

1 Ответ

0 голосов
/ 14 апреля 2019

Это известная регрессия в 8.5.39, которая исправлена ​​в только что выпущенном 8.5.40.

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