2012-06-07 1 views
0

Я пытаюсь создать пользовательскую страницу 404, которая пытается найти данную страницу в другом месте. Для этого я добавил следующее web.xml:Можно ли передавать параметры через тег Error-page в web.xml для веб-приложений tomcat?

<error-page> 
    <error-code>404</error-code> 
    <location>/error/404-cf-redirect.jsp?</location> 
</error-page> 

Как и называя эту страницу, я хотел бы передать URI в так что редирект может понять, где пользователь пытается получить и то можно попытаться найти другое местоположение.

Если это не сработает, будет сгенерировано еще 404, и тот же самый jsp будет обрабатывать неудавшийся запрос по-разному, создавая правильное сообщение об ошибке.

Возможно ли передать URI в качестве некоторого параметра?

Cheers,

Alexei Blue.

+0

попробуйте http://stackoverflow.com/questions/995248/how-to-get-the-message-in-a-custom-error-page-tomcat – Kris

ответ

1

В вашей «не найдено» странице ошибки, вы просто должны получить это значение из атрибутов запроса:

request.getAttribute("javax.servlet.forward.request_uri") 

Это будет включать в себя исходный URI, запрошенный клиентом. Вы можете узнать много информации об исходном запросе, прочитав раздел 9.4 спецификации сервлета (который можно найти здесь: http://jcp.org/aboutJava/communityprocess/final/jsr315/index.html). Вся спецификация заслуживает внимания, и ИМО требует чтения для всех, кто пишет веб-приложения.