2013-06-11 2 views
5

Это часть моей web.xmlДобавление условия в web.xml

<error-page> 
    <error-code>500</error-code> 
    <location>/index</location> 
    </error-page> 

Есть ли способ сказать web.xml файл, в режиме разработки:

<location>/displayException</location>

для вышеуказанного location property?

или любым способом добавить условие через код?

Целью этого является: В режиме разработки я хочу видеть исключение на странице и в режиме реального времени. Я хочу перенаправить его на страницу по умолчанию, когда произошло исключение.

ответ

3

Вы не можете сделать это в web.xml уровне. Это может быть классной особенностью, если web.xml относится к свойствам системы, но это не так.

Таким образом, вы можете сделать это только в коде. К счастью, у вас есть различные возможности. Вы можете сопоставить свой URL-адрес ошибки с JSP, где вы реализуете логику, основанную на системном свойстве или другом параметре, хранящемся в файле свойств, базе данных или где вы хотите. Вы можете это сделать и в HTTP-фильтре.

Вы также можете создать несколько версий своего web.xml: один для производства, другой для тестов. Если вы хотите избежать дублирования, создайте эти версии, используя автоматическое создание из шаблона.

+0

** несколько версий вашего web.xml ** сделают это. Потому что есть такие серверные изменения, как this.Thanks. –

1

В Wildfly есть непортативный способ включения оценки свойств системы в web.xml (и другие, такие как persistence.xml). Для этого укажите следующее в конфигурации сервера (standalone.xml или другой), в ee подсистемы:

<subsystem xmlns="urn:jboss:domain:ee:2.0"> 
    <spec-descriptor-property-replacement>true</spec-descriptor-property-replacement> 
    <!-- ... --> 
</subsystem> 

Тогда вы могли бы сделать что-то вроде этого:

<location>${myapp.errorpage.location}</location> 
0

Вы можете использовать, если заявления на странице ошибки или местоположения. web.xml не поддерживает операторы if.

//error page 
if("blog".equals(url)) 
    blog content ...... 
else if("profile".equals(url)) 
    profile content ...... 
+0

// ошибка страницы if ("blog" .equals (url)) содержание блога ...... else if ("profile" .equals (url)) profile content ...... –

Смежные вопросы