Generierung von JSP-Klassendateien

Zur Laufzeit lädt die JSP-Engine von WebSphere Application Server JSP-Klassendateien aus dem WAS-Verzeichnis temp oder aus dem Verzeichnis WEB-INF/classes eines Webmoduls. Die JSP-Engine sucht eine Klassendatei zuerst im Verzeichnis temp und erst danach im Verzeichnis WEB-INF/classes des Webmoduls.

In einer Standardinstallation ist das Verzeichnis temp von WebSphere Application Server gewöhnlich Profilstammverzeichnis/temp. Abbildung 1 zeigt die Verarbeitungslogik der JSP-Engine zur Laufzeit.

[z/OS]Verwenden Sie nicht den Befehl CANCEL Name_des_Anwendungsserverprozesses, um einen Server zu stoppen. Die Verzeichnisse temp werden entfernt, wenn ein Server ordnungsgemäß gestoppt wird. Sollte es häufiger vorkommen, dass der Server nicht ordnungsgemäß gestoppt wird, was geschieht, wenn Sie den Server abbrechen und nicht stoppen, werden diese Verzeichnisse nicht entfernt, und der Speicherplatz im HFS für das Verzeichnis temp reicht nicht mehr aus. Sie können diesem Speicherproblem vorbeugen, indem Sie Ihre JSP-Dateien bei der Installation einer Anwendung vorkompilieren oder die Funktion JspBatchCompiler aufrufen, um die JSP-Dateien vorzukompilieren, bevor sie aufgerufen werden.

[z/OS]Wenn JSPs zur Laufzeit kompiliert werden, werden dieselben generierten Klassen in jedes temporären Servant-Verzeichnis gestellt. Diese Klassen werden dann gelöscht, wenn der Server oder Servant erneut gestartet wird, was ineffizient ist und eine erhöhte Plattenspeicherplatzbelegung zur Folge hat, weil alle Kopien einer Klasse gespeichert werden. Wenn der Servant oder Server fehlschlägt, werden diese kompilierten Klassen nicht automatisch bereinigt. Außerdem müssen die gelöschten JSP-Klassen nach jedem Neustart des Servants erneut kompiliert werden.

[z/OS]Die oben genannte Ineffizienz wurde korrigiert. Wenn JSPs zur Laufzeit kompiliert werden, generiert der JSP-Container die kompilierten Klassen im temporären Verzeichnis eines gemeinsamen Servers, das nach dem Neustart des Servers oder Servants bestehen bleibt.

Wichtig

Der Stapelcompiler unterstützt die Generierung von Klassendateien im Verzeichnis von WebSphere Application Server temp und im Verzeichnis WEB-INF/classes eines Webmoduls, je nach Typ des Stapelcompilerziels. Außerdem ermöglicht der Stapelcompiler die Generierung von Klassendateien in einem Verzeichnis des Dateisystems außerhalb der Zielanwendung. Wenn Sie die Klassendateien im Verzeichnis WEB-INF/classes eines Webmoduls generieren, können Sie das Webmodul als eigenständige WAR-Datei oder als WAR-Datei in einer EAR-Datei einsetzen. Die folgende Tabelle zeigt das Verhalten des Stapelcompilers beim Kompilieren der Klassendateien.

Tabelle 1. Verhalten des Stapelcompilers. Verhalten des Stapelcompilers bei der Kompilierung von Klassendateien
  ear.path oder war.path angegeben enterpriseApp.name angegeben
compileToDir nicht angegeben, compileToWebInf nicht angegeben oder true Die Klassendateien werden kompiliert und in das Webmodulverzeichnis WEB-INF/classes gestellt. Die Klassendateien werden kompiliert und in das Webmodulverzeichnis WEB-INF/classes gestellt.
compileToDir nicht angegeben, compileToWebInf ist false Die Klassendateien werden kompiliert und in das Webmodulverzeichnis WEB-INF/classes gestellt.

Die Klassendateien werden kompiliert und in das temporäre Verzeichnis von WebSphere Application Server, in der Regel Profilstammverzeichnis/temp, gestellt.

compileToDir ist angegeben, compileToWebInf ist nicht angegeben oder true oder false Die Klassendateien werden in dem mit compileToDir angegebenen Verzeichnis kompiliert. Die Klassendateien werden in dem mit compileToDir angegebenen Verzeichnis kompiliert.

Symbol, das den Typ des Artikels anzeigt. Konzeptartikel



Symbol für Zeitmarke Letzte Aktualisierung: 25.05.2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cweb_jspclassfiles
Dateiname:cweb_jspclassfiles.html