Пользовательская страница ошибки 500 с использованием JSF - доступно ли полное сообщение об ошибке? - PullRequest
6 голосов
/ 10 ноября 2011

В моем файле web.xml ошибка 500 обрабатывается страницей JSF:

<error-page>
    <error-code>500</error-code>
    <location>/errorpage.html</location>
</error-page>

Если контейнер обрабатывает ошибку 500 и вызывает эту страницу JSF, есть ли параметр запроса или содержимое тела взапрос, содержащий полное сообщение об ошибке?

Так, например, если я использую этот код в сервлете для предоставления описания ошибки с ошибкой 500:

response.sendError(HttpURLConnection.HTTP_INTERNAL_ERROR, "Some error message");

существует ли стандартный способполучить текст "Некоторое сообщение об ошибке" из запроса?

1 Ответ

10 голосов
/ 10 ноября 2011

Он доступен как атрибут запроса с ключом RequestDispatcher#ERROR_MESSAGE, который равен "javax.servlet.error.message".Таким образом, это должно сделать:

<p>The error message is: #{requestScope['javax.servlet.error.message']}</p>

(примечание: я предполагаю, что вы используете Facelets; для JSP вы должны будете поместить его в <h:outputText>)

...