Spec-Zone .ru
спецификации, руководства, описания, API


javax.servlet
Интерфейс ServletContainerInitializer


public interface ServletContainerInitializer

Интерфейс, который позволяет библиотеке/времени выполнения быть уведомленной относительно фазы запуска веб-приложения и выполнять любую необходимую программируемую регистрацию сервлетов, фильтров, и слушателей в ответ на это.

Реализации этого интерфейса могут быть аннотированы HandlesTypes, чтобы получить (в их onStartup(java.util.Set метод) Набор классов приложений, которые реализуют, расширитесь, или были аннотированы типами class, определенными аннотацией.

Если реализация этого интерфейса не использует эту аннотацию, или ни один из классов приложений не соответствует тем определенным аннотацией, контейнер должен передать Набор null классов onStartup(java.util.Set.

Исследуя классы приложения, чтобы видеть, соответствуют ли они какой-либо из критериев, определенных аннотацией HandlesTypes ServletContainerInitializer, контейнер может столкнуться с classloading проблемами, если любой из дополнительных файлов JAR приложения отсутствует. Поскольку контейнер не имеет возможность решать, будут ли эти типы classloading отказов препятствовать тому, чтобы приложение работало правильно, это должно проигнорировать их, одновременно обеспечивая параметр конфигурации, который зарегистрировал бы их.

Реализации этого интерфейса должны быть объявлены ресурсом файла JAR, расположенным в каталоге META-INF/services и названные по имени полностью определенного имени class этого интерфейса, и будут обнаружены, используя механизм поиска поставщика услуг времени выполнения или контейнерный определенный механизм, который семантически эквивалентен этому. В любом случае должны быть проигнорированы службы ServletContainerInitializer от веб-файлов JAR фрагмента, исключенных из абсолютного упорядочивания, и порядок, в котором обнаруживаются эти службы, должен следовать за classloading моделью делегации приложения.

С тех пор:
Сервлет 3.0
См. Также:
HandlesTypes

Сводка метода
 void onStartup(java.util.Set<java.lang.Class<?>> c, ServletContext ctx)
          Уведомляет этот ServletContainerInitializer относительно запуска приложения, представленного данным ServletContext.
 

Деталь метода

onStartup

void onStartup(java.util.Set<java.lang.Class<?>> c,
               ServletContext ctx)
               throws ServletException
Уведомляет этот ServletContainerInitializer относительно запуска приложения, представленного данным ServletContext.

Если этот ServletContainerInitializer будет связан в файле JAR в каталоге WEB-INF/lib приложения, то его метод onStartup будет вызван только однажды во время запуска связывающегося приложения. Если этот ServletContainerInitializer будет связан в файле JAR за пределами какого-либо каталога WEB-INF/lib, но все еще поддающийся обнаружению как описано выше, то его метод onStartup будет вызван каждый раз, когда приложение запускается.

Параметры:
c - Набор классов приложений, которые расширяются, реализуйте, или были аннотированы типами class, определенными HandlesTypes аннотация, или null, если нет никаких соответствий, или этого ServletContainerInitializer, не была аннотирована HandlesTypes
ctx - ServletContext веб-приложения, которое запускается и в котором были найдены классы, содержавшиеся в c
Броски:
ServletException - если ошибка произошла


Представьте ошибку или функцию

Авторское право © 2009-2011, Oracle Corporation и/или его филиалы. Все права защищены. Использование подвергается срокам действия лицензии.

Сгенерированный на 10-February-2011 12:41

free hit counter