Руководство по настройке и использованию JEE Web-контейнера Apache Tomcat 6

О продукте

Apache Tomcat 6.0 является одним из наиболее популярных Web-серверов, реализующих спецификацию JEE 5 (Java Enterprise Edition). Он бесплатно распространяется для коммерческого и некоммерческого использования под лицензией Apache Software License с открытыми исходными кодами.

Сам продукт, документацию и исходные коды можно найти на http://tomcat. apache. org.

Apache Tomcat 6.0 состоит из следующих интегрированных компонентов:

1. Web Connector Coyote, реализующий протокол HTTP/1.1, с помощью которого пользователь, используя Интернет-браузер, может отправлять запросы к серверу и получать ответ.

2. Web Container Catalina реализует спецификацию Servlet API 2.5 из JEE 5. Спецификация в основном представляет собой набор Java-интерфейсов из пакета javax.servlet, реализации которых содержатся в Catalina, но программисты-пользователи этого контейнера пользуются только интерфейсами, которые не зависят от реализации. Это основной принцип построения платформы JEE и многих разделов JSE (Java Standard Edition).

Servlet API является основой для всех остальных технологий Java касающихся Web и дает нам возможность динамически генерировать любой Web-контент, используя любые библиотеки, доступные для java.

3. Jasper Compiler – компилятор JSP-страниц (поддерживает спецификацию JSP 2.1). JSP страница является наиболее популярным (но не единственным) средством простого создания динамически-генерируемых HTML, XML и других документов, имеющих текстовое представление.

НЕ нашли? Не то? Что вы ищете?

Таким образом, Apache Tomcat предоставляет возможность делать динамические сайты от самых простых (только JSP страницы, аналогично PHP), до сложных высокопроизводительных масштабируемых систем Enterprise-уровня.

Структура каталогов

/bin/ - скрипты запуска, остановки и пр.

/startup. bat (startup. sh) – запуск

/shutdown.bat (shutdown.sh) – остановка

/catalina.bat (catalina.sh) – скрипт запуска и настройки параметров (вызывается из startup. bat)

/conf/ - конфигурационные файлы

/server.xml – основной конфигурационный файл, тут задаются порты, коннекторы и пр.

/web.xml – включается во все web. xml файлы приложений по-умолчанию

/lib – библиотеки сервера, все библиотеки из этой папки доступны всем приложениям. Сюда надо класть JDBC драйвера, если подключение идет из приложения через Datasource

/log – логи (протоколы) сервера. Используются для статистики, диагностики и отладки

/temp – папка для временных файлов сервера и приложений

/webapps – папка для приложений. Все, что здесь лежит будет развернуто и запущено при старте сервера, а так же во время его работы (hot-deploy)

/ROOT – специальное имя для корневого контекста. Приложение в этой папке будет привязано к контексту “/”, т. е. доступно через http://localhost:8080/

/docs, examples, host-manager, manager, ROOT – примеры приложений, документация и административная консоль, входящие в поставку сервера. Их можно без ущерба удалить.

/work – рабочая папка сервера. Сюда будут складываться скомпилированные на лету JSP файлы, сериализованные сессии пользователей (чтобы рестарт сервера не выкинул пользователей из системы) и пр. Содержимое можно (и, иногда, нужно) без ущерба удалять.

Красным выделены элементы, необходимые для начала работы с сервером.

Quick Start

Предварительные условия: должна быть установлена Sun JDK 5 или 6

1.  Скачайте архив с томкатом apache-tomcat-6.0.14.tar. gz (или новой версии) с http://tomcat. apache. org/download-60.cgi. Лучше использовать дистрибуцию core в формате zip, или tar. gzip, т. к. для разработки неудобно использовать windows service (не видно, что происходит в консоли).

2.  Распакуйте архив на диск (лучше, чтобы в пути не было длинных и русских имен).

3.  Установите переменную окружения JAVA_HOME на папку, где установлена JDK. Это можно сделать либо через My computer -> Properties -> Advanced -> environment variables. Либо добавив в начало /bin/catalina. bat строку:

set JAVA_HOME=/path/to/jdk

4.  Запустите файл /bin/start. bat. Сообщение “INFO: Server startup in 1602 ms” сообщит об успешном запуске.

5.  Откройте в браузере http://localhost:8080/.

Для линукса шаги ничем не отличаются, только вместо. bat файлов надо запускать. sh файлы и вместо “set JAVA_HOME=” – “export JAVA_HOME=”. Tomcat – pure java приложение, поэтому дистрибутивы для всех ОС одинаковы.

Останавливать сервер можно через shutdown. bat (sh) либо просто закрывать окно (командой kill).

Hello World на Томкате

Предварительные условия: Tomcat должен быть установлен и запущен (во всяком случае, до обращения к нему через браузер)

1.  Создайте папку hello в /webapps

2.  Положите туда файл index.jsp со следующим содержимым:

<html>

<head>

<title>Hello world</title>

</head>

<body>

Hello world at <%=new java. util. Date()%>

</body>

</html>

3.  Откройте http://localhost:8080/hello

Обратите внимание, в JSP между <%= %> можно помещать любой Java-код, возвращающий некое значение – оно будет выведено на HTML-страницу. Между <% %> можно помещать любой java код – он просто выполнится в процессе рендеринга страницы на сервере.