Was ist Tomcat ?
Tomcat ist ein Java Servlet Container. Er ist die Referenz Implementation der Java Servlet und JavaServer Pages. Ein Servlet ist ein Java Programm, welches in einer speziellen Umgebung auf dem Server ausgeführt wird. Tomcat wurde von der Jakarta Projektgruppe entwickelt. Diese wird von der Apache Software Foundation unterstützt. Weitere Informationen (in Englisch) finden Sie auf der http://tomcat.apache.org Website.
Tomcat bei NetZone
Die Tomcat-Umgebung ist bei NetZone als Option in 2 verschiedenen Varianten verfügbar.
- Shared-Tomcat: Hier teilen sich mehrere User die Tomcat-Instanz. Vorteile: sehr kostengünstig. Nachteile: weniger stabil, da einzelne Applikationen die ganze Instanz in Mitleidenschaft ziehen können.
- Eigene Tomcat-Instanz: Hier hat der Benutzer seine eigene Tomcatinstanz mit eigenem Speicherbereich. Vorteile: Stabil und somit für kommerzielle Anwendungen sehr gut geeignet. Der User kann seinen Tomcat selber starten und stoppen. Nachteil: Tomcat ist sehr ressourcenhungrig und somit ist diese Installation kostenintensiver. Hier wird nach verwendetem Hauptspeicher (nicht Diskspeicher!) abgerechnet. In der Basisinstallation sind 128 MB verfügbar, Zusatzspeicher kann in 128 MB Paketen hinzugefügt werden
Als Tomcat-Server werden Server mit schnellen Intel XEON-Prozessoren und mit bis zu 48 GB RAM verwendet.
Die Tomcat Manager Application
Um Ihnen das Entwickeln / Administrieren Ihrer Webapplikation möglichst einfach zu gestalten haben wir die Manager Applikation freigeschalten. Die HTML Version ist unter /webapps/manager/html zu finden. Die Bedienung des HTML Managers sollte selbsterklärend sein. Zum Manager allgemein und auch zur Steuerung mit skripts finden Sie unter http://jakarta.apache.org/tomcat/tomcat-5.5-doc/manager-howto.html weitere Information (in Englisch).
Die Tomcat Logfiles
Erstellen Sie im Verzeichnis WEB-INF/classes Ihrer Applikation eine Datei mit dem Namen log4j.properties.
Die Datei hat folgenden Inhalt:
log4j.debug=TRUE
log4j.rootLogger=INFO, R
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=/home/i/h/ihrname.ch/tomcatlogs/tomcat.log
log4j.appender.R.MaxFileSize=100KB
log4j.appender.R.MaxBackupIndex=5
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSSS} %p %t %c - %m%n
Ersetzen Sie dabei den roten Teil mit dem Absolutpfad Ihres Logfiles.
Installation von Applikationen unter Tomcat 5.5
Sie finden in Ihrem htdocs/webapps Verzeichnis zwei Unterverzeichnisse, context und example. Im example finden Sie ein kleines .jsp Beispiel, eine .war Datei mit einem Servlet drin, und das entpackte Servlet. Dieses Servlet können Sie mit </nowiki>http://ihredomain.ch/webapps/example/HelloWorld</nowiki> aufrufen. Das .jsp file kann direkt ausgeführt werden.
Im context Verzeichnis finden sie auch zwei .xml Dateien, diese enthalten <Context> Elemente, welche dazu dienen, den Context Ihrer Applikation für Ihre Bedürfnisse zu konfigurieren.
Sie können beliebig eigene Applikationen hinzufügen. Das example kann als Vorlage dienen. Bitte beachten Sie das es für Servlets unbedingt ein “WEB-INF” Verzeichnis und eine web.xml Datei braucht sowie ein context-File im context-Verzeichnis. Die meisten Java IDE’s sind in der Lage ein .war file mit passender web.xml zu erstellen.
Wir empfehlen Ihnen folgendes Vorgehen beim Installieren einer neuen Applikationen abc:
1. Erstellen Sie ein Context-File mit dem Namen webapps#abc.xml für Ihre neue Applikation im Verzeichnis /webapps/context/
2. Laden Sie Ihre Applikation per FTP auf den Server (nicht als .war-File sondern bereits entpackt ins zugehörige Verzeichnis mit dem Namen der Applikation (in unserm Fall also webapps/abc/).
3. Installieren Sie dann Ihre Applikation mit dem Manager.
- Hierzu tragen Sie in das Feld Kontext-Pfad den entsprechenden Pfad ein, in unserem Beispiel wäre das also /webapps/abc
- Im Eingabefelde für die ‘XML-Konfigurationsdatei URL’ tragen Sie den absoluten Pfadnamen zum Kontextfile ein. Schreiben Sie hier also file:/home/i/h/ihrname.ch/htdocs/webapps/context/webapps#abc.xml
- Das dritte Eingabefeld (WAR oder Verzeichnis URL) bleibt leer.
- Drücken Sie die Installieren-Schaltfläche.
Ihre Applikation wird installiert.
Installieren Sie selber KEINE Standardbibliotheken wie z.B. mysql-connector usw. Diese werden von uns bereits in der richtigen Konfiguration vorinstalliert im common/lib und sind somit automatisch verfügbar. Andernfalls belasten Sie unnötig die Tomcat-Umgebung, was Ihre Applikation verlangsamt oder unbrauchbar macht. Insbesondere nach Systemupdates besteht die Gefahr, dass solche Applikationen mit selbstinstallierten Basis-Libraries nicht mehr einwandfrei funktionieren.
Installation von Applikationen unter Tomcat 6.0
Standardmässig wird bei NetZone Apache/Tomcat so konfiguriert, dass nur Anfragen mit /webapps (also www.ihrname.ch/webapps/) an den Tomcat-Server weitergereicht werden. Die anderen Requests werden weiterhin durch den vorgelagerten Apache Webserver verarbeitet. Sie finden in Ihrem htdocs Verzeichnis ein webapps-Verzeichnis wo Ihre Applikation abgelegt werden sollte.
Wir empfehlen Ihnen folgendes Vorgehen beim Installieren einer neuen Applikation abc:
Laden Sie Ihre Applikation abc per FTP auf den Server ins Verzeichnis /htodcs/webapps/ entweder als war-File oder als bereits entpackte Applikation. Das war-File muss dann folgendermassen benannt werden: webapps#abc.war resp beim Upload der entpackten Version muss das Verzeichnis webapps#abc heissen !! Es muss also jeweils “webapps#” vor den Namen der Applikation gesetzt werden.
Sie können danach einfach die Applikation mit dem Manager deployen. Tragen Sie hierzu einfach den Pfad Ihrer Applikation in das Feld Kontext-Pfad ein, in userem Beispiel also /webapps/abc . Die andern beiden Eingabefelder bleiben leer. Drücken Sie die Deploy-Schaltfläche zum Starten der Installation..
Bemerkung: Falls die Applikation direkt unter www.ihrname.ch/webapps starten soll (als ROOT-Applikation), müssen Sie diese wie beschrieben installieren. Nennen Sie dabei das Verzeichnis webapps oder das war-Files webapps.war und geben Sie bei der Installation im Manager alsKontextpfad /webapps ein.
Entwicklung eigener Applikationen
Die Shared-Tomcat Umgebung ist eine produktive Umgebung. Die Entwicklung von eigenen Applikationen ist auf dieser Umgebung nicht erlaubt! Entwickeln Sie Ihre Programme lokal auf eigenen Servern und testen Sie diese ausgiebig, bevor Sie diese produktiv auf unseren Servern installieren! Fehlerhafte Applikationen können den Tomcatbetrieb massiv beeinträchtigen. Wir behalten uns deshalb vor, fehlerhafte Applikationen ohne Vorwarnung zu deaktivieren. Im Wiederholungsfall kann der Tomcatzugang gesperrt werden.
Neustart von Tomcat
Der Shared-Tomcat kann nur durch den NetZone-Support neu gestartet werden. Für die Installation von Applikationen ist ein Neustart jedoch nicht notwendig. Verwenden Sie zum installieren die Managerapplikation. Falls Sie eine eigene Tomcat-Instanz verwalten, können Sie diese mit NetConfig verwalten resp. neu starten. Die restliche Verwaltung erfolgt ebenfalls mit NetConfig.
E-Mail versand unter Tomcat
Beachten Sie, dass wenn Sie von Ihrer Tomcat-Appliaktion aus Mails versenden möchten, Sie als SMTP-Server nicht mail.netzone.ch eintragen können. Verwenden Sie hier localhost oder die direkte IP 127.0.0.1.
