Мастер фильтров помогает создать фильтры сервлетов Java™ с помощью пошаговых действий и
предоставляя
файлы вывода, которые можно использовать или изменить для применения с веб-приложением. Фильтры можно выполнять на веб-серверах, совместимых с Java EE.
Для создания фильтра выполните следующие действия:
- В проекции Java EE разверните динамический проект на панели Структура
проектов.
- Щелкните правой кнопкой мыши на значке Фильтр и выберите в контекстном меню. Откроется мастер Создать фильтр.
- Следуйте инструкциям мастера проекта.
Общая информация
- Модификаторы
- В спецификации Sun Microsystems Java Servlet 2.3 указано, что класс
Servlet следует объявлять как public, а не abstract. Поэтому данные модификаторы изменить невозможно. Можно изменить только модификатор final.
- Интерфейсы
- Классы фильтра должны реализовывать один обязательный интерфейс: javax.servlet.Filter.
Этот интерфейс доступен в пакете javax.servlet и представляет жизненный цикл
фильтра. Этот интерфейс содержит три метода: init, doFilter и destroy.
- Метод init вызывается контейнером сервлета только один раз после
создания экземпляра фильтра.
- Метод doFilter относится к фильтрованию и вызывается каждый раз, когда
пользователь запрашивает ресурс, с которым связан фильтр (например сервлет).
- Метод destroy вызывается контейнером сервлета для исключения фильтра.
Несмотря на то, что интерфейс javax.servlet.Filter по
умолчанию указан в поле Интерфейсы, можно добавить дополнительные интерфейсы для реализации с помощью кнопки Добавить.
- Диалоговое окно выбора интерфейса
- Это окно отображается при добавлении интерфейса в фильтр.
При вводе имени добавляемого интерфейса список доступных интерфейсов в поле Совпадающие элементы
будет динамически меняться для показа только интерфейсов, совпадающих с введенным именем. Выберите интерфейс для просмотра спецификатора и нажмите кнопку OK.
- Связи фильтров
- Для того чтобы настроить фильтр для перехвата запросов к сервлету, выполните следующие
действия:
- объявите фильтр с помощью элемента <filter> в файле описания
- свяжите фильтр с сервлетом с помощью элемента <filter-mapping>
При необходимости фильтр можно связать с несколькими сервлетами. Для этого свяжите фильтр с
шаблоном URL, чтобы обеспечить возможность выбора запросов, соответствующих этому шаблону. Поле Связи фильтров позволяет полностью автоматизировать этот процесс.
- Заготовки методов
- Поскольку каждый фильтр должен реализовывать интерфейс
javax.servlet.Filter, переключатель Наследуемые абстрактные методы всегда
включен и его нельзя выключить.