Apache Tomcat

Apache Tomcat
Logo
Screenshot
Standard-Startseite von Apache Tomcat
Basisdaten
Entwickler Apache Software Foundation
Erscheinungsjahr 1999, 27. Januar 2006
Aktuelle Version 11.0.27
(12. Oktober 2026)
Betriebssystem GNU/Linux, Microsoft Windows, BSD-Betriebssystem, macOS, Unix-ähnliches System
Programmier­sprache Java
Kategorie Webserver, Java
Lizenz Apache-Lizenz, Version 2.0
tomcat.apache.org

Apache Tomcat ist ein Open-Source-Anwendungsserver und Servlet-Container, der die Spezifikation für Jakarta Servlets (früher: Java Servlets) und Jakarta Server Pages (JSP, früher: JavaServer Pages) implementiert und es damit erlaubt, in Java geschriebene Web-Anwendungen auf Servlet- beziehungsweise JSP-Basis auszuführen.

Aufbau und Funktionsweise

Tomcat besteht aus dem eigentlichen Servlet-Container Catalina, der JSP-Engine Jasper und dem Connector-Framework Coyote. Mittels verschiedener Connectoren unterstützt Tomcat diverse Kommunikationsprotokolle und kann mit dem HTTP-Connector entweder als eigenständiger Webserver betrieben oder mittels des AJP-Connectors in andere Webserver wie Apache Web-Server oder Microsoft IIS integriert werden. Mit der gegenwärtig existierenden AJP-Implementierung (Version 1.3) ist es möglich, den Servlet-Container auf einem gesonderten Host-Rechner zu betreiben, um den Webserver zu entlasten; insbesondere erlaubt es die Lastverteilungsfunktionalität, bei entsprechendem Leistungsbedarf dem Webserver einen Cluster aus mehreren Servlet-Containern zur Seite zu stellen.

Verzeichnisstruktur

Die Verzeichnishierarchie einer Tomcat 6.x/7.x/8.x/9.x Installation umfasst:

bin
startup, shutdown und andere Skripte und ausführbare Dateien
conf
(XML-)Konfigurationsdateien
lib
Allgemeine Bibliotheken, die von Catalina und anderen Webapplikationen benutzt werden können
logs
Catalina- und Anwendungslogs
temp
temporäre Dateien
webapps
Verzeichnis der Webapplikationen
work
Verzeichnis zum Aufbewahren kompilierter JSP-/jspx-Dateien, persistierter Sessions etc.

Geschichte

Die Entwicklung von Tomcat startete ursprünglich als Projekt von James Duncan Davidson bei Sun Microsystems als Referenz-Implementierung für die Java-Servlet- und JavaServer-Pages-Spezifikationen. Sun übertrug 1999 die Codebasis von Tomcat auf die Apache Software Foundation, die das Projekt unter dem Dach ihres Top-Level-Projekts Jakarta als Open-Source-Projekt weiterführte. Im Jahr 2005 wurde Tomcat selbst zu einem eigenen Apache-Top-Level-Projekt und hat seitdem seine eigene Organisations- und Management-Struktur.

Vor Übernahme des Tomcat-Projekts unterhielt die Apache Software Foundation bereits einen Servlet-Container namens JServ. Die Entwicklung von JServ wurde zugunsten von Tomcat im Jahr 2000 eingestellt. Lediglich der Connector, der Tomcat an andere Webserver über das AJP-Protokoll anbinden kann, wurde aus der Codebasis von JServ heraus in Tomcat übernommen. Im Jahr 2001 erfolgte mit der Tomcat-Version 4 ein tiefgreifendes Redesign der Tomcat-Struktur und weite Teile der Codebasis wurden neu erstellt.

Tomcat findet auch in einer Reihe von Jakarta-EE-Anwendungsservern Anwendung, so ist er beispielsweise Bestandteil von Apache Geronimo und Apache TomEE.

Wichtige Apache-Tomcat-Versionen

Version Veröffentlicht am Unterstützung bis Letzte Version Letzte Aktualisierung Servlet-Version JSP-Version Java-Version Beschreibung / Anmerkung
Ältere Version; nicht mehr unterstützt: 3.x 1999 EOL 3.3.2 9. März 2004 2.2 1.1 1.1 Initiale Version. Merger des gespendeten Sun-Java-Web-Server-Codes und ASF. Neuladen von Servlets ohne Neustart. Refactoring hin zu mehr Modularität zwecks Performance- und Stabilitätsverbesserungen
Ältere Version; nicht mehr unterstützt: 4.x 18. Sep. 2001 EOL 4.1.40 25. Juni 2009 2.3 1.2 1.3 Neuentwicklung des Servlet-Containers ("Catalina"), Neuentwicklung des JSP-Compilers ("Jasper"), Einbau von JMX, JSP- und Struts-basierter Administration
Ältere Version; nicht mehr unterstützt: 5.0 9. Okt. 2002 EOL 5.0.30 30. Aug. 2004 2.4 2.0 1.4 bessere Integration in die Plattformen Windows und Unix
Ältere Version; nicht mehr unterstützt: 5.5 10. Nov. 2004 30. Sep. 2012 5.5.36 10. Okt. 2012 2.4 2.0 1.4 Überarbeitung vieler Teile, Erhöhung der Leistung und Stabilität; basiert auf JSE 5.0 (mit zusätzlichen Bibliotheken auch unter JSE 1.4)
Ältere Version; nicht mehr unterstützt: 6.0 28. Feb. 2007 31. Dez. 2016 6.0.53 2. Apr. 2017 2.5 2.1 5
Ältere Version; nicht mehr unterstützt: 7.0 14. Jan. 2011 31. März 2021 7.0.109 26. Apr. 2021 3.0 2.2 6 Erhöhung der Leistung und Stabilität, viele Änderungen im Bereich Servlet (Annotationen, asynchrone Bearbeitung von Requests, dynamische Konfiguration), basiert auf JSE 6
Ältere Version; nicht mehr unterstützt: 8.0 24. Juni 2014 30. Juni 2018 8.0.53 29. Juni 2018 3.1 2.3 7
Ältere Version; nicht mehr unterstützt: 8.5 24. März 2016 31. März 2024 8.5.100 19. März 2024 3.1 2.3 7 HTTP/2 mit Unterstützung der Tomcat Native Library; OpenSSL für JSSE; Unterstützung von Server Name Indication
Ältere Version; noch unterstützt: 9.0 30. Sep. 2017 31. März 2027 9.0.117 30. März 2026 4.0 2.3 8
Ältere Version; nicht mehr unterstützt: 10.0 28. Dez. 2020 31. Oktober 2022 10.0.27 3. Okt. 2022 5.0 3.0 8 Unterstützung für Jakarta EE 9
Ältere Version; noch unterstützt: 10.1 26. Sep. 2022 10.1.54 30. März 2026 6.0 3.1 11 Unterstützung für Jakarta EE 10
Aktuelle Version: 11.0 9. Okt. 2024 11.0.21 30. März 2026 6.1 4.0 17 Unterstützung für Jakarta EE 11
Legende:
Ältere Version; nicht mehr unterstützt
Ältere Version; noch unterstützt
Aktuelle Version
Aktuelle Vorabversion
Zukünftige Version
Commons: Apache Tomcat – Sammlung von Bildern, Videos und Audiodateien

Einzelnachweise

  1. ↑ Heritage. (englisch, abgerufen am 24. Juli 2018).
  2. 1 2 projects.apache.org. (abgerufen am 8. April 2020).
  3. ↑ Tomcat 11.0.27 (markt). 12. Oktober 2026 (abgerufen am 12. Oktober 2026).
  4. 1 2 3 4 5 In: Free Software Directory.
  5. ↑ The tomcat Open Source Project on Open Hub: Languages Page. In: Open Hub. (abgerufen am 21. September 2018).
  6. ↑ Tomcat 7 Documentation. Apache Software Foundation, abgerufen am 20. Februar 2013.
  7. ↑ Lajos Moczar: Tomcat 5. Einsatz in Unternehmensanwendungen mit JSP und Servlets. 1. Auflage. Addison-Wesley, 2004, ISBN 978-3-8273-2202-9, S. 410 ff. (Google Books).
  8. ↑ Apache Tomcat Dokumentation: The Tomcat Story
  9. ↑ Vivek Chopra, Sing Li, Jeff Genender: Professional Apache Tomcat 6. 1. Auflage. Wiley, 2007, ISBN 978-0-471-75361-2, S. 3,62 (Google Books).
  10. ↑ Apache Tomcat 3.x. Apache Tomcat, 10. November 2004, abgerufen am 28. Juli 2018 (englisch).
  11. ↑ Tomcat 5.5.4 is Stable. 10. November 2004, abgerufen am 28. Juli 2018 (englisch).
  12. ↑ End of life for Apache Tomcat 5.5.x. Apache Tomcat, 10. August 2011, abgerufen am 24. Juli 2018 (englisch).
  13. ↑ Apache Tomcat 5.5 Changelog. Apache Tomcat, abgerufen am 28. Juli 2018 (englisch).
  14. 1 2 Apache Tomcat 6 Changelog. Apache Tomcat, abgerufen am 28. Juli 2018 (englisch).
  15. ↑ End of life for Apache Tomcat 6.0.x. Apache Tomcat, 3. Juni 2015, abgerufen am 28. Juli 2018 (englisch).
  16. 1 2 Apache Tomcat 7 Changelog. Apache Tomcat, abgerufen am 20. Mai 2020 (englisch).
  17. ↑ End of life for Apache Tomcat 7.0.x. Apache Tomcat, 2. März 2020, abgerufen am 28. Juli 2018 (englisch).
  18. 1 2 Apache Tomcat 8 Changelog. Apache Tomcat, abgerufen am 28. Juli 2018 (englisch).
  19. ↑ End of life for Apache Tomcat 8.0.x. Apache Tomcat, 30. Juni 2017, abgerufen am 28. Juli 2018 (englisch).
  20. 1 2 Apache Tomcat 8.5 Changelog. Apache Tomcat, abgerufen am 13. Mai 2024 (englisch).
  21. ↑ Apache Tomcat® - End of life for Apache Tomcat 8.5.x. Abgerufen am 3. August 2023.
  22. 1 2 Apache Tomcat 9 Changelog. Apache Tomcat, abgerufen am 2. Mai 2026 (englisch).
  23. ↑ Apache Tomcat® - End of support for Apache Tomcat 9.0.x. Abgerufen am 25. Oktober 2026.
  24. ↑ Apache Tomcat 10 Changelog. In: tomcat.apache.org. Abgerufen am 24. August 2021 (englisch).
  25. ↑ Apache Tomcat® - End of life for Apache Tomcat 10.0.x. Abgerufen am 3. August 2023.
  26. 1 2 Apache Tomcat 10.1 Changelog. Apache Tomcat, abgerufen am 2. Mai 2026 (englisch).
  27. 1 2 Apache Tomcat 11 Changelog. Apache Tomcat, abgerufen am 2. Mai 2026 (englisch).