Руководство по настройке и использованию 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 код – он просто выполнится в процессе рендеринга страницы на сервере.


