Сервлеты и Tomcat
по адресу http://gis-lab.info/qa/tomcat.html
Краткое описание сервлетов и их использование в Tomcat
Введение
Сервлеты - это приложения, написанные на java (такие как [geoserver-begin.html GeoServer], [geowebcache.html GeoWebCache], [geojazzy.html GeoJazzy]), и предназначенные для работы на сервере. Для их работы нужен так называемый "контейнер сервлетов". В дистрибутив GeoServer входит небольшой встраиваемый сервер Jetty, который совмещает в себе HTTP-сервер и контейнер сервлетов. Для первого знакомства его вполне достаточно. Но при промышленной эксплуатации сказываются отсутствие у него средств удаленного мониторинга и управления, установки и удаления приложений. В этой статье описывается работа с сервером Tomcat.
Установка Tomcat
Apache Tomcat это HTTP сервер с поддержкой технологий Java Servlet и JavaServer Pages (JSP). Дистрибутив для Windows называется Windows Service Installer. Установка проходит максимально просто и не требует задания особых параметров.
После завершения установки нужно запустить новую службу. Щелкаем правой кнопкой мыши по значку "Мой компьютер" и выбираем "Управление". Переходим в раздел "Службы и приложения > Службы" и находим "Apache Tomcat 6". Щелкаем правой кнопкой и выбираем "Пуск". После перезагрузки компьютера в системном трэе появится значек службы и вы сможете управлять приложением через него.
Стандартно, сервер приписан к порту 8080. Страница управления: http://localhost:8080/.
Установка приложений
Установка приложений в контейнер сервлетов ничем не отличается в Windows, Linux, FreeBSD. Сервлет должен быть упакован в "Web Application aRchive" (файл с расширением "war"). Один и тот же файл работает на любой платформе.
Переходим на страницу "Application Manager" (http://localhost:8080/manager/html). В списке приведены все установленные приложения. Чтобы добавить новое, в разделе "WAR file to deploy" нажимаем "Обзор", выбираем WAR-файл. Нажимаем "Deploy". Приложение должно появиться в списке (учтите, что потребуется некоторое время для загрузки и распаковки, но Tomcat все это сделает самостоятельно).
Теперь, с помощью кнопок "Start/Stop/Reload" можно останавливать и перезагружать отдельное приложение, а не весь сервер. Кнопка "Undeploy" служит для удаления приложений.
После установки приложения может потребоваться внести изменения в файлы конфигурации. В документации к программам указывается путь относительно каталога webapps и имени приложения. Для Windows путь выглядит так:
c:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\
Для FreeBSD:
/usr/local/apache-tomcat-6.0/webapps
Например, для задания параметра DATA_DIR в GeoServer нужно изменить файл WEB-INF/web.xml. Этот файл расположен:
...\webapps\geoserver\WEB-INF\web.xml
Заключение
Tomcat не единственный контейнер сервлетов. Есть еще и JBoss, GlassFish и многие другие. Принципы работы у всех схожие и для приложений нет разницы в каком контейнере они исполняются. Но на практике, бывают случаи несовместимости или нестабильности в работе. Поэтому обращайте внимание на рекомендации по выбору контейнера для конкретного приложения.
Для работы контейнера сервлетов, в свою очередь, требуется виртуальная машина Java. Она входит в набор Java Development Kit (JDK). Из-за лицензионных ограничений, наложенных разработчиком (Sun Microsystems, Inc.), появилось несколько различных реализаций JDK: Sun, IBM, Blackdown, OpenJDK и др. В случае с GeoServer подходят JDK только от Sun (предпочтительнее) и IBM. Начиная с версии 2.0 возможна работа с OpenJDK, но производительность сервера в этом случае существенно ниже.