Internet Programming with Java Course

Структура на J2EE Web-приложенията

Светлин Наков

 

J2EE Web-приложенията представляват съвкупност от файлове, които се разполагат в поддиректориите на дадена директория с фиксирана структура. Тази директория се нарича основна (или главна) за Web-приложението и структурата й се задава от J2EE спецификацията. За всеки тип файлове спецификацията определя точно местоположение в рамките на структурата на приложението:

-       JSP файловете се разполагат в главната директория на приложението или в поддиректории, създадени от програмиста с цел по-добро структуриране на приложението.

-       Настройките на приложението се задават в специалния конфигурационен файл с име web.xml намиращ се в поддиректория WEB-INF.

-       Класовете, които приложението използва се разполагат в поддиректория WEB-INF\classes. В същата директория се разполагат и Java сървлетите. Ако класовете имат пакети, за тях се създават съответни поддиректории.

-       Java архивите, които могат да съдържат класове, изображения и други ресурси се разполагат в поддиректория WEB-INF\lib. Най-често в тази lib директория се разполагат библиотеки с класове, които приложението използва.

Благодарение на тази фиксирана структура на приложението Web-контейнерът знае къде да търси различните файлове, когато му потрябват.

Обикновено всички файлове заедно с цялата структура на директориите се записва в Java архив (ZIP файл) с име името на Web-приложението и с разширение .war. Например едно приложение за Web-базиран дискусионен форум може да се казва forum.war и да представлява .zip файл със следната структура:

WEB-INF/
    web.xml
    classes/
        CommonUtils.class
        DeleteServlet.class
    lib/
        xercesImpl.jar
        xml-apis.jar
header.jsp
login.jsp
logout.jsp
footer.jsp
postMessage.jsp
showMessages.jsp

При deploy-ване на приложението в Web-контейнера, който ще го изпълнява (например на сървър Tomcat), файлът, в който то се намира (в нашия случай forum.war) се разархивира от сървъра и за приложението се създава виртуална Web директория, достъпна от някакъв URL адрес, например http://www.myserver.com/forum/. Ако не е указано друго, директорията има името на Web-приложението.