Apache Tomcat
|
|
 Standard-Startseite von Apache Tomcat
|
Basisdaten
|
Entwickler
|
Apache Software Foundation
|
Erscheinungsjahr
|
1999[1], 27. Januar 2006[2]
|
Aktuelle Version
|
11.0.11[3] (5. September 2025)
|
Aktuelle Vorabversion
|
9.0.0.M17[4] (16. Januar 2017)
|
Betriebssystem
|
GNU/Linux[5], Microsoft Windows[5], BSD-Betriebssystem[5], macOS[5], Unix-ähnliches System
|
Programmiersprache
|
Java[6][2]
|
Kategorie
|
Webserver, Java
|
Lizenz
|
Apache-Lizenz, Version 2.0[5]
|
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.[7]
Aufbau und Funktionsweise
Tomcat besteht aus dem eigentlichen Servlet-Container Catalina, der JSP-Engine Jasper und dem Connector-Framework Coyote.[8] 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.[9]
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.[10]
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[11]
|
Ä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[12]
|
30. Sep. 2012[13]
|
5.5.36[14]
|
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[15]
|
31. Dez. 2016[16]
|
6.0.53[15]
|
2. Apr. 2017
|
2.5
|
2.1
|
5
|
|
Ältere Version; nicht mehr unterstützt: 7.0
|
14. Jan. 2011[17]
|
31. März 2021[18]
|
7.0.109[17]
|
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[19]
|
30. Juni 2018[20]
|
8.0.53[19]
|
29. Juni 2018
|
3.1
|
2.3
|
7
|
|
Ältere Version; nicht mehr unterstützt: 8.5
|
24. März 2016[21]
|
31. März 2024[22]
|
8.5.100[21]
|
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[23]
|
|
9.0.107[23]
|
4. Juli 2025
|
4.0
|
2.3
|
8
|
HTTP/2-Unterstützung auch ohne Tomcat Native Library sofern Java 9 eingesetzt wird[24]
|
Ältere Version; nicht mehr unterstützt: 10.0
|
28. Dez. 2020[25]
|
31. Oktober 2022[26]
|
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[27]
|
|
10.1.43[27]
|
4. Juli 2025
|
6.0
|
3.1
|
11
|
Unterstützung für Jakarta EE 10
|
Aktuelle Version: 11.0
|
9. Okt. 2024[28]
|
|
11.0.9[28]
|
4. Juli 2025
|
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
|
Weblinks
Einzelnachweise
- ↑ Heritage. (englisch, abgerufen am 24. Juli 2018).
- ↑ a b projects.apache.org. (abgerufen am 8. April 2020).
- ↑ Tomcat 11.0.11 (markt). 5. September 2025 (abgerufen am 10. September 2025).
- ↑ Tomcat 9.0.0.M17 (alpha) Released. 16. Januar 2017.
- ↑ a b c d e In: Free Software Directory.
- ↑ The tomcat Open Source Project on Open Hub: Languages Page. In: Open Hub. (abgerufen am 21. September 2018).
- ↑ Tomcat 7 Documentation. Apache Software Foundation, abgerufen am 20. Februar 2013.
- ↑ 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).
- ↑ Apache Tomcat Dokumentation: The Tomcat Story
- ↑ 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).
- ↑ Apache Tomcat 3.x. Apache Tomcat, 10. November 2004, abgerufen am 28. Juli 2018 (englisch).
- ↑ Tomcat 5.5.4 is Stable. 10. November 2004, abgerufen am 28. Juli 2018 (englisch).
- ↑ End of life for Apache Tomcat 5.5.x. Apache Tomcat, 10. August 2011, abgerufen am 24. Juli 2018 (englisch).
- ↑ Apache Tomcat 5.5 Changelog. Apache Tomcat, abgerufen am 28. Juli 2018 (englisch).
- ↑ a b Apache Tomcat 6 Changelog. Apache Tomcat, abgerufen am 28. Juli 2018 (englisch).
- ↑ End of life for Apache Tomcat 6.0.x. Apache Tomcat, 3. Juni 2015, abgerufen am 28. Juli 2018 (englisch).
- ↑ a b Apache Tomcat 7 Changelog. Apache Tomcat, abgerufen am 20. Mai 2020 (englisch).
- ↑ End of life for Apache Tomcat 7.0.x. Apache Tomcat, 2. März 2020, abgerufen am 28. Juli 2018 (englisch).
- ↑ a b Apache Tomcat 8 Changelog. Apache Tomcat, abgerufen am 28. Juli 2018 (englisch).
- ↑ End of life for Apache Tomcat 8.0.x. Apache Tomcat, 30. Juni 2017, abgerufen am 28. Juli 2018 (englisch).
- ↑ a b Apache Tomcat 8.5 Changelog. Apache Tomcat, abgerufen am 13. Mai 2024 (englisch).
- ↑ Apache Tomcat® - End of life for Apache Tomcat 8.5.x. Abgerufen am 3. August 2023.
- ↑ a b Apache Tomcat 9 Changelog. Apache Tomcat, abgerufen am 6. Juli 2025 (englisch).
- ↑ Apache Tomcat 9. Apache Tomcat, abgerufen am 28. Juli 2018 (englisch).
- ↑ Apache Tomcat 10 Changelog. In: tomcat.apache.org. Abgerufen am 24. August 2021 (englisch).
- ↑ Apache Tomcat® - End of life for Apache Tomcat 10.0.x. Abgerufen am 3. August 2023.
- ↑ a b Apache Tomcat 10.1 Changelog. Apache Tomcat, abgerufen am 6. Juli 2025 (englisch).
- ↑ a b Apache Tomcat 11 Changelog. Apache Tomcat, abgerufen am 6. Juli 2025 (englisch).