Сопоставление фильтров для всего в Struts2, кроме одного сервлета? - PullRequest
6 голосов
/ 02 октября 2010

У меня есть веб-приложение Struts2 (2.1.8.1).Мой web.xml выглядит так:

  <filter>
    <filter-name>struts2</filter-name>
    <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
  </filter>

  <filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>

Это настроено для сопоставления всех запросов с фильтром Struts.Я хочу добавить сервлет в мое веб-приложение.Я хочу отправить все запросы с определенным шаблоном URL на этот сервлет.Я хочу, чтобы все остальное пошло к моему сервлету Struts.

Я знаю, что могу сопоставить только "* .action" с сервлетом Struts, но я ненавижу, когда действие находится в конце всех моих URL.

1 Ответ

13 голосов
/ 02 октября 2010

В вашем Struts.xml добавить:

<constant name="struts.action.excludePattern" value="/ServletToExcludeFromStruts*"/>

Значение должно быть разделено запятыми, а также для нескольких исключений. Смотри http://struts.apache.org/2.2.1/docs/webxml.html

...