Tomcat игнорирует мою персонализированную ошибку сервлет / страницу - PullRequest
0 голосов
/ 26 сентября 2010

У меня есть проблема, которая сводит меня с ума. Не уверен, что это ошибка в Tomcat или просто моя глупость, но тут все.

У меня настроен собственный сервлет ошибок, что-то , подобное этому . Настройка работает, и если я имитирую исключения или 404 ошибки и т. Д., Запускается сервлет, страница ошибки отображается в основном, код ответа 500 или 400 ... ну, это работает.

Но вышеприведенные настройки меня не устраивают, и мне нужно перенаправить в JSP (я делаю свои операции в сервлете, помещаю соответствующие данные в область запроса и пересылаю в JSP для отображения).

Итак, в моем методе doPost / doGet в сервлете я делаю:

getServletContext().getRequestDispatcher(...).forward(request, response);

Новая установка работает до одной точки. То есть сервлет запускается и пересылается в JSP, JSP выполняется (я поместил в него инструкции журнала, и они выполняются), но в браузере я получаю страницу ошибки tomcat по умолчанию, а не содержимое моего JSP.

Я также настроил <%@page isErrorPage="true"%> в своем JSP, но не имеет значения, присутствует он или нет, после выполнения JSP его ответ просто исчезает, и я получаю страницу ошибки Tomcat по умолчанию в браузере.

Кто-нибудь сейчас почему это не работает? Я схожу с ума!

Спасибо всем!

P.S. Я использую Tomcat 5.5.26.

1 Ответ

1 голос
/ 26 сентября 2010

Скорее всего, было выброшено исключение. Пользовательская страница ошибки показывает детали исключения? Если нет, проверили ли вы журналы сервера в папке /logs, чтобы убедиться, что произошло исключение? Что говорит страница с ошибкой, если вы отображаете ${exception} (при наличии isErrorPage="true" на странице ошибки)? Обратите внимание, что isErrorPage="true" не должен входить в «нормальные» файлы JSP.

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