Tomcat (I) Ende 1999 Jakarta-Projekt von Apache, IBM und Sun gegründet Ziel: freie (open source) Serverumgebung, als Referenzimplementierung für Servlets und JSPs Erste Produkte: Servlet-Container Tomcat + JSP-Compiler Jasper Tomcat4
Tomcat4 (II) seit Anfang 2001: neue Architektur Catalina Servlet-Container: Catalina + JSP-Compiler: Jasper Tomcat = Catalina +Jasper Aktuell: 4.1.24 (stabil), 5.02 alpha Tomcat4
Einsatz-Szenarien Eigenständiger Webserver („Standalone“) Erweiterung bestehenden Webservers (Add-on) z.B. Apache HTTP Server Eingebettet in Applikationsserver u.a. Szenario 2 bessere Performance als 1, besonders bei Anfragen nach statischen Komponenten (HTML, Bilder) Tomcat4
Web-Applikation Ansammlung von Dateien (HTML, Bilder, Servlets, JSPs...) Festlegungen in Servlet-Spezifikation (Erleichterung der Portierung) logische Struktur für Zusammenspiel der Elemente Struktur Deployment Deskriptor Archivierungsformat auf Basis von JAR-Archiven Tomcat4
Web-Applikation (Struktur) / HTML, Bilder, JSPs /WEB-INF Ressourcen, die nicht direkt an Client geschickt und serverseitig ausgeführt–kein Zugriff über HTTP (web.xml) /WEB-INF/ classes Class-Dateien /WEB-INF/lib Jar-Archive /WEB-INF/ web.xml Deployment Deskriptor Tomcat4
Catalina-Architektur Server Service Engine Connector Request Host Context Connector Servlet Servlet Response Connector Servlet Tomcat4
JSP-Compiler Jasper JSP-Compiler + JSP-Laufzeitumgebung des Tomcat-Servers Als Servlet realisiert Initialisieren (Namen für Servlet festlegen) Parsen + Code generieren (JSP-Code in Java-Code) Kompilieren (Java-Code zu Servlet-Klasse) Debuggen (Parser-, Compiler-, Laufzeitfehler) Tomcat4
Konfiguration Tomcat server.xml web.xml (deployment descriptor) Aufbau Tomcat-Server Durch Administration Tool konfigurierbar web.xml (deployment descriptor) beeinflußt Verhalten der Web-Applikation kontrolliert: Sicherheit, Session-Management ... Angaben zu Standard-Servlets, z.B. JSP-Servlet überschrieben + erweitert durch web.xml in Applikationen tomcat-users.xml Nutzerverwaltung Tomcat4
Installation Download von aktueller J2SE (ab jdk1.2) Download + Entpacken der Binaries http://jakarta.apache.org/site/binindex.cgi Verfügbar als tar-Archive (Unix), zip-Archive (Windows) + exe-Datei (Windows) Zu setzende Umgebungsvariablen: JAVA_HOME + CATALINA_HOME Start startup.sh oder startup.bat danach Tomcat unter http://localhost:8080/ verfügbar Stop shutdown.sh oder shutdown.bat Tomcat4
Startseite Tomcat Tomcat4
Verzeichnisstruktur bin Skripte für Starten und Herunterfahren conf Konfigurationsdateien des Servers logs Logdateien shared Klassen, von allen Web-Anwendungen gemeinsam genutzt: classes/ ungepackt, lib/ in JAR Dateien webapps Automatisch geladene Web-Applikationen: exampes/ Beispielanwendungen work Temporäres Arbeitsverzeichnis für Web-Anwendungen (kompilierte JSPs) Tomcat4
Zusammenfassung Offizielle Referenzimplementierung für Servlets und JSPs Vollständig in Java entwickelt Für viele OS verfügbar (Windows, Linux, Solaris) Catalina-Architektur komponentenbasiert + Nutzung von Entwurfsmustern leicht erweiterbar + konfigurierbar Tomcat4
Quellen Turau, V., Saleck, K., Schmidt, M.: Java Server Pages und J2EE: Unternehmensweite Web-basierte Anwendungen, dpunkt.verlag, Heidelberg, 2001. Wille, S., Go To Java Server Pages, Addison-Wesley, München, 2001 http://jakarta.apache.org/tomcat http://www.fh-wedel.de/~si/seminare/ws01/Ausarbeitung/c.tomcat/start.htm http://www.fh-wedel.de/~si/seminare/ws02/Ausarbeitung/a.tomcat/tomcat0.htm Tomcat4