Java Platform, Enterprise Edition (Java EE) 8
Учебник по Java EE

Назад Вперёд Содержание

Упаковка веб-архивов

В архитектуре Java EE веб-модуль — это наименьший развёртываемый и используемый элемент веб-ресурсов. Веб-модуль содержит веб-компоненты и файлы статического веб-содержимого (например, изображения), которые называются веб-ресурсами. Веб-модуль Java EE соответствует веб-приложению, определённому в спецификации сервлетов Java.

В дополнение к веб-компонентам и веб-ресурсам веб-модуль может содержать другие файлы:

  • Серверные утилитные классы

  • Клиентские утилитные классы

Веб-модуль имеет специфическую структуру. Каталог верхнего уровня веб-модуля является корневым каталогом приложения. В корне документа хранятся страницы XHTML, клиентские классы и архивы, а также статические веб-ресурсы (например, изображения).

Корень документа содержит подкаталог WEB-INF, который может содержать следующие файлы и каталоги:

  • classes, каталог, содержащий серверные классы: сервлеты, файлы классов Enterprise-бинов, служебные классы и компоненты JavaBeans

  • lib, каталог, содержащий JAR-файлы, содержащие Enterprise-бины, и JAR-архивы библиотек, вызываемых серверными классами

  • Дескрипторы развёртывания, такие как web.xml (дескриптор развёртывания веб-приложения) и ejb-jar.xml (дескриптор развёртывания EJB)

Веб-модулю нужен файл web.xml, если он использует JavaServer Faces, если он должен указывать определённые виды информации о безопасности или если вы хотите переопределить информацию, указанную в аннотациях веб-компонента.

Вы также можете создавать специфичные для приложения подкаталоги (то есть каталоги пакетов) либо в корневом каталоге документа, либо в каталоге WEB-INF/classes/.

Веб-модуль может быть развёрнут в виде распакованной файловой структуры или может быть упакован в файл JAR, известный как файл веб-архива (WAR). Поскольку содержимое и использование файлов WAR отличаются от файлов JAR, имена файлов WAR имеют расширение .war. Только что описанный веб-модуль является переносимым. Он может быть развернут в любом веб-контейнере, соответствующем спецификации сервлетов Java.

Вы можете предоставить дескриптор развёртывания во время выполнения при развёртывании WAR на GlassFish Server, но в большинстве случаев этого не требуется. Дескриптор развёртывания времени выполнения — это файл XML, который может содержать такую ​​информацию, как корневой контекст веб-приложения, назначение переносимых имён ресурсов приложения ресурсам GlassFish Server и назначение ролей безопасности приложения пользователям, группам и принципалам, определённым в GlassFish Server. Дескриптор развёртывания времени выполнения веб-приложения GlassFish Server, если он используется, имеет имя glassfish-web.xml и находится в каталоге WEB-INF. Структура веб-модуля, который можно развернуть в GlassFish Server, показана на рисунке 5-3.

Рисунок 5-3. Структура веб-модуля

Схема структуры веб-модуля. WEB-INF и веб-страницы находятся в корне. Под WEB-INF находятся дескрипторы и каталоги lib и classes.


Назад Вперёд Содержание
Логотип Oracle  Copyright © 2017, Oracle и/или её дочерних компаний. Все права защищены. Версия перевода 1.0.5 (Java EE Tutorial — русскоязычная версия)