Tomcat является основным проектом проекта Apache Software Foundation в Джакарте. Он разработан совместно Apache, Sun и другими компаниями и отдельными лицами. Благодаря участию и поддержке Sun последние спецификации сервлетов и JSP всегда могут быть отражены в Tomcat. Поскольку Tomcat обладает передовой технологией, стабильной производительностью и бесплатен, он глубоко любим энтузиастами Java и признан некоторыми разработчиками программного обеспечения. Tomcat очень популярен среди программистов, поскольку он занимает немного времени. системные ресурсы при работе, имеет хорошую масштабируемость и поддерживает функции, обычно используемые в системах разработки приложений, такие как балансировка нагрузки и службы электронной почты, и постоянно совершенствуется и совершенствуется. Любой заинтересованный программист может изменить его или добавить к нему новые функции.
Apache Tomcat версии 6.0.20
Примечания к выпуску
============================
ИЗВЕСТНЫЕ ПРОБЛЕМЫ В ЭТОЙ ВЫПУСКЕ:
============================
*Изменения зависимостей
* Приложения на основе JNI
* Связанные API
* Перезагрузка веб-приложений и статические поля в общих библиотеках.
* Томкэт в Linux
* Включение поддержки SSI и CGI.
* URL-адреса менеджера безопасности.
* Символические ссылки на статические ресурсы.
* Включение сервлета вызова
* Просмотр журнала изменений Tomcat
* Когда все остальное терпит неудачу
===================
Изменения зависимостей:
===================
Tomcat 6.0 предназначен для работы на JSE 5.0 и более поздних версиях.
Кроме того, Tomcat 6.0 использует Java-компилятор Eclipse JDT для компиляции.
Страницы JSP. Это означает, что вам больше не нужна полная версия.
Комплект разработки Java (JDK) для запуска Tomcat, но среда выполнения Java
(JRE) достаточно. Компилятор Eclipse JDT Java входит в комплект поставки.
Двоичные дистрибутивы Tomcat также можно настроить для использования.
компилятор из JDK для компиляции JSP или любой другой поддерживаемый компилятор Java
от Apache Ant.
======================
Приложения на основе JNI:
======================
Приложения, которым требуются собственные библиотеки, должны гарантировать, что библиотеки имеют
загружается перед использованием. Обычно это делается с помощью вызова типа:
статический {
System.loadLibrary("путь к файлу библиотеки");
}
в каком-то классе Однако приложение также должно гарантировать наличие библиотеки.
не загружается более одного раза, если приведенный выше код был помещен в класс внутри.
веб-приложение (т. е. в /WEB-INF/classes или /WEB-INF/lib) и
приложение было перезагружено, вызов loadLibrary() будет предпринят второй раз.
время.
Чтобы избежать этой проблемы, размещайте классы, загружающие собственные библиотеки, за пределами
веб-приложение и убедитесь, что вызов loadLibrary() выполняется только один раз.
во время существования конкретной JVM.
=============
Связанные API:
=============
Стандартная установка Tomcat 6.0 делает доступными все следующие API.
для использования веб-приложениями (поместив их в «lib»):
* annotations-api.jar (пакет аннотаций)
* catalina.jar (реализация Tomcat Catalina)
* catalina-ant.jar (задания Tomcat Catalina Ant)
* catalina-ha.jar (пакет высокой доступности)
* catalina-tribes.jar (Групповое общение)
* el-api.jar (API EL 2.1)
* jasper.jar (компилятор и среда выполнения Jasper 2)
* jasper-el.jar (реализация Jasper 2 EL)
* jasper-jdt.jar (Java-компилятор Eclipse JDT 3.3)
* jsp-api.jar (API JSP 2.1)
* servlet-api.jar (API сервлета 2.5)
* tomcat-coyote.jar (коннекторы и служебные классы Tomcat)
* tomcat-dbcp.jar (пакет переименован в пул соединений с базой данных на основе Commons DBCP)
Вы можете сделать дополнительные API доступными для всех ваших веб-приложений, выполнив
помещение распакованных классов в каталог «классы» (не созданный по умолчанию),
или поместив их в файлы JAR в каталоге «lib».
Чтобы переопределить реализацию или интерфейсы синтаксического анализатора XML, используйте одобренный
механизм JVM. Конфигурация по умолчанию определяет файлы JAR, расположенные в.
«одобрено» как одобрено.
=============================================== ==============
Перезагрузка веб-приложения и статические поля в общих библиотеках:
=============================================== ==============
Некоторые общие библиотеки (многие из них являются частью JDK) хранят ссылки на объекты.
создается веб-приложением, чтобы избежать проблем, связанных с загрузкой классов.
(ClassCastExceptions, сообщения, указывающие, что загрузчик классов
остановлен и т. д.), состояние общих библиотек необходимо повторно инициализировать.
Что может помочь, так это избегать размещения классов, которые были бы
на который ссылается общее статическое поле в загрузчике классов веб-приложения,
и вместо этого поместить их в общий загрузчик классов (JAR-файлы следует поместить в
папку «lib», а классы следует помещать в папку «classes»).
================
Томкэт в Linux:
================
Пользователи GLIBC 2.2/Linux 2.4 должны определить переменную среды:
экспорт LD_ASSUME_KERNEL=2.2.5
Пользователям Redhat Linux 9.0 следует использовать следующий параметр, чтобы избежать
проблемы со стабильностью:
экспорт LD_ASSUME_KERNEL=2.4.1
Сообщается о некоторых ошибках в поведении файла отправки NIO в Linux, убедитесь, что вы
используйте обновленную версию JDK или отключите поведение файла отправки в соединителе.
6427312: (fc) FileChannel.transferTo() выдает IOException «системный вызов прерван»
5103988: (fc) FileChannel.transferTo должен возвращать -1 для EAGAIN, а не выдавать IOException
6253145: (fc) FileChannel.transferTo в Linux завершается с ошибкой при выходе за границу 2 ГБ
6470086: (fc) FileChannel.transferTo(2147483647, 1, канал) вызывает исключение «Слишком большое значение»
============================
Включение поддержки SSI и CGI:
============================
Из-за рисков безопасности, связанных с доступными CGI и SSI
для веб-приложений эти функции по умолчанию отключены.
Чтобы включить и настроить поддержку CGI, посетите страницу cgi-howto.html.
Чтобы включить и настроить поддержку SSI, посетите страницу ssi-howto.html.
======================
URL-адреса менеджера безопасности:
======================
Чтобы предоставить разрешения безопасности JAR-файлам, расположенным внутри
репозиторий веб-приложений, используйте URL-адреса следующего формата
в вашем файле политики:
файл: ${catalina.home}/webapps/examples/WEB-INF/lib/driver.jar
===========================
Символические ссылки на статические ресурсы:
===========================
По умолчанию символические ссылки Unix не будут работать при использовании в веб-приложении для связи.
ресурсы, расположенные за пределами корневого каталога веб-приложения.
Это поведение не является обязательным, и для отключения можно использовать флаг «allowLinking».
чек.
========================
Включение сервлета вызова:
========================
Начиная с Tomcat 4.1.12, сервлет вызова больше недоступен
по умолчанию во всех веб-приложениях. Включить его для всех веб-приложений можно путем редактирования.
$CATALINA_HOME/conf/web.xml, чтобы раскомментировать сопоставление сервлетов «/servlet/*».
определение.
Использование сервлета активатора в производственной среде не рекомендуется и
не поддерживается. Более подробную информацию можно найти в FAQ по Tomcat по адресу.
http://tomcat.apache.org/faq/misc.html#invoker.
=============================
Просмотр журнала изменений Tomcat:
=============================
См. файл Changelog.html в этом каталоге.
====================
Когда все остальное терпит неудачу:
====================
См. часто задаваемые вопросы
http://tomcat.apache.org/faq/
Расширять