Tomcat-Einstellungen
Diese Einstellungen sollten an jedem System entsprechend vorgenommen werden. Optional können noch folgende Einstellungen vorgenommen werden:
- Bereitstellung über HTTPS
Konfiguration des Tomcats um Aufruf über HTTPS zu ermöglichen - Xima® Formcycle von Root-Domain aufrufen
Statt etwa über http://formcycle.eu/formcycle/ kann Xima® Formcycle so über http://formcycle.eu/ aufgerufen werden. - Datenverzeichnis von Xima® Formcycle ändern
Verzeichnis, in dem interne Daten von Xima® Formcycle und Formularen gespeichert werden.
Speicher
Folgende Einstellungen bzgl. Arbeitsspeicher sollten vorgenommen bzw. angepasst werden.
- -Xms512m
Anfangsgröße des Heap - -Xmx4096m
Maximalgröße des Heap
Beispiel (Linux)
Der Pfad zur Konfigurationsdatei ist TOMCAT_VERZEICHNIS/bin/setenv.sh
Einstellung am Connector
Folgende Einstellungen sollten am Tomcat in der Konfigurationsdatei TOMCAT_VERZEICHNIS/conf/server.xml vorgenommen werden:
connectionTimeout="20000"
redirectPort="8443"
URIEncoding="UTF-8"
maxPostSize="10485760"
maxHttpHeaderSize="65536"
relaxedQueryChars="[ \ ] ^ ` { | }" />
Weitere Informationen zu den Parametern finden Sie in den folgenden Abschnitten.
Beschränkung der Upload-Größe ändern
Diese Einstellung betrifft die Maximalgröße von Dateien beim Upload im Formular durch Uploadelemente und beim Upload im Posteingang. Ist die Uploadgröße kleiner als definiert, kommt es zu einem Fehler beim Hochladen der Datei. Der Default-Wert sind 2MB.
Der Pfad zur Konfigurationsdatei ist TOMCAT_VERZEICHNIS/conf/server.xml
Folgende Option muss innerhalb des Connectors definiert sein:
Beispiel für eine maximale Uploadgröße von 10 MB, die Angabe erfolgt in Bytes:
maxPostSize="10485760"
... />
Beschränkung der HTTP-Headergröße ändern
Diese Einstellung betrifft die Maximalgröße der vom Tomcat akzeptierten HTTP-Header. Diese kann zum Beispiel bei aktivierter Kerberos-Authentifizierung den Standardwert überschreiten, sodass Tomcat zum Beispiel der Aufruf eines Formulars mit einem HTTP-Fehlercode 400 (Ungültiger Request) verweigert.
Der Pfad zur Konfigurationsdatei ist TOMCAT_VERZEICHNIS/conf/server.xml.
Folgende Option muss innerhalb des Connectors definiert sein:
Beispiel für 64 KB, die Angabe erfolgt in Bytes:
maxHttpHeaderSize="65536"
... />
UTF-8
Kommt es zu Fehlern bei der Darstellung von Umlauten oder anderen landesspezifischen Zeichen, prüfen Sie, ob das URIEncoding am Connector angegeben wurde.
Der Pfad zur Konfigurationsdatei ist TOMCAT_VERZEICHNIS/conf/server.xml
Folgende Option muss innerhalb des Connectors definiert sein:
Beispiel
URIEncoding="UTF-8"
... />
Kommt es ferner zu Darstellungsproblemen von Dateinamen mit Sonderzeichen und/oder Umlauten ergänzen sie bitte den Java-Parameter -Dfile.encoding=UTF-8. Dieser muss je nach verwendetem Betriebssystem entweder in der verwendeten Konfigurationsdatei oder Konfigurationsfenter angegeben werden.
Beispiel (Linux)
Der Pfad zur Konfigurationsdatei ist TOMCAT_VERZEICHNIS/bin/setenv.sh
Session-Timeout
Das Session-Timeout kann innerhalb der web.xml von Xima® Formcycle erhöht werden, sollte die Standardeinstellung von 30 Minuten nicht ausreichen.
Der Pfad zur Konfigurationsdatei ist TOMCAT_VERZEICHNIS/webapps/formcycle/WEB-INF/web.xml
<session-config>
...
<session-timeout>30</session-timeout>
...
</session-config>
Session-Tracking
Innerhalb der web.xml von Xima® Formcycle (TOMCAT_VERZEICHNIS/webapps/formcycle/WEB-INF/web.xml) oder auch in der globalen web.xml des Tomcat-Servers (TOMCAT_VERZEICHNIS/conf/web.xml) kann der Modus des zu verwendenden Session-Tracking Modus hinterlegt werden. Standardmäßig gibt es seitens Xima® Formcycle hierfür keine Festlegung, sodass hier sowohl die Verwendung von Cookies oder das Übertragen der Session-ID innerhalb der URL möglich sind. Zweiteres ist ein Rückfall falls z.B. der Browser des Benutzers keine Cookies zulässt. Da eine solche URL jedoch bei unachtsamem Gebrauch in falsche Hände geraten kann und man so ggf. die Sitzung eines angemeldeten Benutzers übernehmen könnte, empfiehlt es sich wenn möglich ausschließlich das Session-Tracking per Cookie zu verwenden. Konfiguriert wird das Verhalten durch das Auskommentieren bzw. Einfügen der gewünschten Mechanismen. Innerhalb der Xima® Formcycle-web.xml sind standardmäßig beide Werte auskommentiert was zu dem beschriebenen Standard-Verhalten führt. Ein Session-Tracking ausschließlich per Cookie würde demnach wie folgt aussehen:
...
<!-- Uncomment the session-trackings-mode(s) you want to use -->
<!-- <tracking-mode>URL</tracking-mode> -->
<tracking-mode>COOKIE</tracking-mode>
...
</session-config>
Cookie-Konfiguration
Innerhalb der Session-Konfiguration können sowohl in der globalen Tomcat-web.xml (TOMCAT_VERZEICHNIS/conf/web.xml) als auch innerhalb der Xima® Formcycle-web.xml (TOMCAT_VERZEICHNIS/webapps/formcycle/WEB-INF/web.xml) Einstellungen bezüglich des verwendeten Session-Cookies getroffen werden. Xima® Formcycle setzt hier standardmäßig bereits den Wert http-only was dazu führt, dass der Cookie lediglich innerhalb des Browsers benutzt werden kann. Zusätzlich besteht die Möglichkeit das Cookie auf eine feste Domain (domain) und Pfad (path) zu binden und auch einen eigenen Namen (name) sowie die Gültigkeit (max-age) festzulegen. Standardmäßig sind Anpassungen dieser Einstellungen nicht nötig. Relevanter ist jedoch die Option secure. Ist diese vorhanden und hat den Wert true, werden Cookies lediglich bei der Kommunikation über HTTPS übertragen. Sollte die Anwendung oder der ganze Server ausschließlich über HTTPS bereitgestellt werden, ist es aus Gründen der Sicherheit empfohlen diesen Wert zu setzen. Innerhalb der Xima® Formcycle-web.xml würde dies wie folgt aussehen:
...
<cookie-config>
<!-- <comment>This is my special cookie configuration</comment> -->
<!-- <domain>example.com</domain> -->
<!-- <name>CUSTOM_NAME</name> -->
<http-only>true</http-only>
<secure>true</secure>
<!-- <max-age>30000</max-age> -->
<!-- <path>/formcycle</path> -->
</cookie-config>
</session-config>
Kontextname
Der Kontextname wird beispielsweise genutzt, um Monitoring Beans zum Überwachen des Serverstatus einzurichten. Standardmäßig ist der Kontextname der Name der WAR-Datei, kann aber auch geändert werden, indem der Kontextparameter XFC_CONTEXT_NAME in der Konfigurationsdatei web.xml geändert wird.
<param-name>XFC_CONTEXT_NAME</param-name>
<param-value>formcycle</param-value>
</context-param>
Benutzerpfad für Tomcat
Auf manchen Linux-basierten Systemen besitzt der Tomcat Nutzer standardmäßig keinen Benutzerordner. Ein solcher wird aber benötigt, damit Xima® Formcycle grundlegende Einstellungen ablegen kann. Der Pfad des Benutzerordners wird üblicherweise in der Datei /etc/passwd vorgenommen.