Эксклюзивные шаблоны URL-адресов в дескрипторе Tomcat web.xml

Я пытаюсь перенаправить ошибочные запросы страниц — ошибки 404 — на пользовательскую страницу ошибок. Чтобы мой сервлет вместо корневого сервлета обрабатывал эти запросы, я ввел следующий шаблон URL:

<url-pattern>/</url-pattern>

К сожалению, это также перехватывает встроенные запросы на такие файлы, как *.js, *.css, *.png, *.jpg и другие подобные файлы. Есть ли способ в дескрипторе развертывания указать эксклюзивный шаблон? Скажем, «все, КРОМЕ запросов с расширением x»?

Или есть другой способ обойти это, что я не вижу?


person Magsol    schedule 29.09.2009    source источник


Ответы (1)


Вы можете просто объявить страницу ошибок для ошибок HTTP 404 в DD следующим образом.

<error-page>
  <error-code>404</error-code>
  <location>/notFound.jsp</location>
</error-page>

Контейнер (Tomcat в вашем случае) затем захватит все HTTP 404 и перенаправит их на указанную вами страницу (/notFound.jsp в приведенном выше примере).

Есть некоторая документация в Sun, и еще немного на Код Google.

person brabster    schedule 29.09.2009
comment
Круто, это именно то, что мне было нужно. Не знаю, почему я не мог понять это самостоятельно, но большое спасибо. - person Magsol; 30.09.2009