директивы web-inf и jsp-страниц
-
02-07-2019 - |
Вопрос
у меня есть несколько файлов jsp в папке web-inf.Внутри моего web.xml я указываю ошибку для 404 amd 403 и java.lang.exception.Нужно ли мне включать директиву page для каждого из моих jsp или они будут автоматически перенаправлены на страницу обработки исключений, потому что они находятся в разделе web-inf?
Если это верно, означает ли это, что jsp, которые не размещены в web-inf, нуждаются в добавлении директивы page, чтобы перенаправлять их на страницу обработки исключений?
спасибо, я просто пытаюсь понять последствия web-inf
Решение
Вам просто нужно, чтобы любая страница ошибок, которую вы хотели бы использовать в своем приложении, была доступна со всеми другими jsp.Итак, в следующем примере вам просто нужно будет иметь страницы ошибок в корневом каталоге контекстного пути (где находятся все остальные jsp).Всякий раз, когда веб-приложение получает сообщение об ошибке 404 или 403, оно пытается отобразить одну из этих страниц..
<error-page>
<error-code>404</error-code>
<location>/404Error.jsp</location>
</error-page>
<error-page>
<error-code>403</error-code>
<location>/403Error.jsp</location>
</error-page>
Просто убедитесь, что 404Error.jsp и 403Error.jsp содержат:
<%@ page isErrorPage="true" %>
Если вы на самом деле используете jsp для страниц ошибок (вместо просто статического html)
Другие советы
хорошо, просто чтобы уточнить;мои jsp не обязательно должны находиться в папке web-inf, чтобы мой веб-дескриптор перехватил исключение и переслал на страницу ошибки