Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> фильтры и форвард, взаимодействие 
V
    Опции темы
Ljusha
Дата 16.11.2006, 21:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 16.11.2006

Репутация: нет
Всего: нет



в web.xml описана цепочка из пяти фильтров.
В третьем фильтре происходит форвард на другой урл. Всегда ли цепочка отработает до конца ? Когда и из-за чего это может не произайти ? 
Не могу дать объяснения такому факту: после форварда filterChain.doFilter() не вызывается, но цепочка отрабатывает до конца, хотя по идее не должна. Что происходит в это случае ? 
PM MAIL   Вверх
Ljusha
Дата 17.11.2006, 12:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 16.11.2006

Репутация: нет
Всего: нет



Цитата

после форварда filterChain.doFilter() не вызывается, но цепочка отрабатывает до конца, хотя по идее не должна. Что происходит в это случае ? 


 smile .. не отрабатывает. управление передается сервлету. 
А что происходит если вызвать doChain() ? Измениться ли что нибудь в последовательности обработки запроса фильтрами ?
PM MAIL   Вверх
Sherst
Дата 17.11.2006, 12:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 131
Регистрация: 26.10.2005

Репутация: 2
Всего: 2



Фильтр отображается на конкретный ресурс. FilterChain.doFilter() - используется для вызова следующего фильтра в цепочке, или если фильтр является последним в цепочке то управление передается сервлету который надо фильтровать.

Первые 2 фильтра форвардят на 1 url? Покажи web.xml.

PM MAIL   Вверх
Sherst
Дата 17.11.2006, 13:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 131
Регистрация: 26.10.2005

Репутация: 2
Всего: 2



Нужно писать одинаковые ресурсы на которые отображаются фильтры  в одной куче не разрывая другими ресурсами.
PM MAIL   Вверх
Ljusha
Дата 17.11.2006, 13:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 16.11.2006

Репутация: нет
Всего: нет



web.xml : 
Код

    <filter>
        <filter-name>FirstFilter</filter-name>
        <filter-class>FirstFilter</filter-class>
    </filter>
    <filter>
        <filter-name>SecondFilter</filter-name>
        <filter-class>SecondFilter</filter-class>
    </filter>
    <filter>
        <filter-name>ThirdFilter</filter-name>
        <filter-class>ThirdFilter</filter-class>
    </filter>
    <filter>
        <filter-name>FouthFilter</filter-name>
        <filter-class>FouthFilter</filter-class>
    </filter>
    <filter>
        <filter-name>FifthFilter</filter-name>
        <filter-class>FifthFilter</filter-class>
    </filter>
   

    <filter-mapping>
        <filter-name>FirstFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
    <filter-mapping>
        <filter-name>SecondFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
    <filter-mapping>
        <filter-name>ThirdFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
    <filter-mapping>
        <filter-name>FouthFilter</filter-name>
        <url-pattern>*.do</url-pattern>
    </filter-mapping>
    <filter-mapping>
        <filter-name>FifthFilter</filter-name>
        <url-pattern>*.do</url-pattern>
    </filter-mapping>
    


Цитата

Первые 2 фильтра форвардят на 1 url?


форвард происходит только в третьем фильтре
PM MAIL   Вверх
Ljusha
Дата 17.11.2006, 13:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 16.11.2006

Репутация: нет
Всего: нет



все понятно, логика прозрачна. всем спасибо.
PM MAIL   Вверх
Sherst
Дата 17.11.2006, 13:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 131
Регистрация: 26.10.2005

Репутация: 2
Всего: 2



Пожалуйста smile


Это сообщение отредактировал(а) Sherst - 17.11.2006, 13:58
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




[ Время генерации скрипта: 0.0419 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.