Konfigurationsparameter der JSP-Engine
In WebSphere Application Server können Sie die Parameter der JSP-Engine (Java™Server Pages) in einer Produktionsserverumgebung konfigurieren, um eine optimale Leistung zu erzielen. In einer Entwicklungsumgebung können Sie die Engine an den Bedarf von Entwicklern anpassen.
Bei den Parametern für die JSP-Engine wird zwischen Groß-/Kleinschreibung unterschieden. Wenn der für einen Parameter angegebene Wert zwei oder mehr durch Leerzeichen voneinander getrennte Wörter enthält, müssen Sie den Wert in Anführungszeichen setzen. Einige Parameter wirken sich auf die Java-Quelle aus, die für eine JSP- oder Tag-Datei generiert wird. Diese Parameter sind mit folgendem Hinweis gekennzeichnet: "Dieser Parameter erfordert eine Neugenerierung der Java-Quelle." Dieser Hinweis besagt, dass nach einer Änderung des Konfigurationsparameters der Wert des Parameters erst dann wirksam wird, wenn die JSP-Dateien neu übersetzt und die Java-Quellen neu kompiliert wurden.

allowMultipleAttributeValues
Gibt an, ob der JSP-Container mehrere Werte für ein angepasstes Tagattribut speichern kann. Setzen Sie diesen Parameter auf true, um dem JSP-Container zu ermöglichen, mehrere Werte zu speichern. Der Standardwert für diesen Parameter ist false. Dieser Parameter erfordert eine Neugenerierung der Java-Quelle.
compileWithAssert
Gibt an, ob die generierten Java-Klassen Unterstützung für die Assertion-Funktion von Developer Kit, Java Technology Edition 1.4 enthalten sollen. Wenn Sie diesen Parameter auf true setzen, wird die Option "–source 1.4" an den Java-Compiler übermittelt. Der Standardwert für diesen Parameter ist false. Dieser Parameter erfordert eine Neugenerierung der Java-Quelle.
classdebuginfo
Gibt an, ob der Compiler Debugging-Informationen in die generierte Klassendatei aufnimmt. Wenn Sie diesen Parameter auf true setzen, wird die Option "-g" an den Java-Compiler übermittelt. Der Standardwert für diesen Parameter ist false. Dieser Parameter erfordert eine Neugenerierung der Java-Quelle.
convertAttrValueToString
Gibt an, ob Anfangs- und Endattribute des Tags "repeat" in Zeichenfolgen konvertiert werden sollen, bevor sie verwendet werden. Der Standardwert für diesen Parameter ist false. Dieser Parameter erfordert eine Neugenerierung der Java-Quelle.
deprecation
Gibt an, ob der Compiler bei der Kompilierung der generierten Java-Quelle Warnungen generieren soll, falls veraltete Daten verwendet werden. Wenn Sie diesen Parameter auf "true" setzen, wird die Option -deprecation an den Java-Compiler übermittelt. Der Standardwert für diesen Parameter ist false. Dieser Parameter erfordert eine Neugenerierung der Java-Quelle.
disableElCache
Setzen Sie diesen Parameter auf Wert true, um den Cache für commons-el-Ausdrücke zu inaktivieren, wenn abnormale Speicherbedingungen auftreten, weil die Hash-Tabellen vom Auswertungsprogramm für die Ausdrücke gesperrt werden. Der Standardwert für diesen Parameter ist false.
disableJspRuntimeCompilation
Wenn Sie diese Option auf true setzen, konvertiert und kompiliert die JSP-Engine zur Laufzeit keine JSP-Dateien, sondern sie lädt nur die vorkompilierten Klassendateien. Es müssen keine JSP-Quellendateien vorhanden sein, damit Klassendateien geladen werden. Wenn diese Option den Wert "true" hat, können Sie eine Anwendung ohne JSP-Quelle installieren, die Anwendung muss jedoch vorkompilierte Klassendateien besitzen. Eine angepasste Eigenschaft für Web-Container mit demselben Namen wird verwendet, um das Verhalten aller im Server installierten Webmodule zu bestimmen. Wenn sowohl die angepasste Eigenschaft des Web-Containers als auch die Option der JSP-Engine gesetzt werden, hat die Option der JSP-Engine Vorrang. Der Standardwert für diesen Parameter ist false.
disableTldSearch
Setzen Sie diese Option auf true, um zu verhindern, dass die JSP-Engine die Anwendungsinstallationsverzeichnisse nach TLD-Dateien (Taglib Descriptor, Deskriptor für Tagbibliothek) durchsucht, wenn eine Anwendung gestartet wird. Wenn diese Option auf false gesetzt ist, durchsucht die JSP-Engine beim Start einer Anwendung die Anwendungsinstallationsverzeichnisse nach TDL-Dateien. Der Standardwert für diesen Parameter ist false.
Mit der angepassten Eigenschaft des Web-Containers com.ibm.wsspi.jsp.disableTldSearch können Sie festlegen, dass die JSP-Engines in allen in einem Server installierten Webmodulen die Anwendungsinstallationsverzeichnisse nicht nach TDL-Dateien durchsuchen sollen, wenn eine Anwendung gestartet wird. Sollten die angepasste Eigenschaft des Web-Containers und die Option für die JSP-Engine im Widerspruch stehen, hat die Einstellung für die JSP-Engine Vorrang.
evalQuotedAndEscapedExpression
Setzen Sie diese Option auf "true", um Escape-Zeichen und Anführungszeichen ordnungsgemäß verarbeiten zu können, wenn festgelegt wird, ob ein Ausdruck auszuwerten ist.
<input type="text" value="${fn:substring('1234567', 0,4)}"/>
Die JSP-Datei kann aufgrund
der Anführungszeichen, die direkt vor der Anweisung fn:substring
stehen, nicht kompiliert werden, weil das Übersetzungsprogramm den Funktionsmapper der generierten
Java-Klasse nicht hinzugefügt hat. Wenn einem Dollarzeichen ($) ein Backslash als Escape-Zeichen
vorangestellt wird (\$), versucht das Übersetzungsprogramm, den Ausdruck auszuwerten, anstatt ihn als Literalzeichenfolge zu behandeln. Für eine ordnungsgemäße Verarbeitung von Escape-Zeichen und
Anführungszeichen müssen
Sie evalQuotedAndEscapedExpression in der Datei ibm-web-ext.xmi oder ibm-web-ext.xml der
Anwendung auf auf true setzen. <jspAttributes xmi:id="JSPAttribute_1"
name="evalQuotedAndEscapedExpression" value="true"/>
<?xml version="1.0" encoding="UTF-8"?>
<web-ext
xmlns="http://websphere.ibm.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://websphere.ibm.com/xml/ns/javaee http://websphere.ibm.com/xml/ns/javaee/ibm-web-ext_1_0.xsd"
version="1.0">
<file-serving-attribute name="extendedDocumentRoot" value="/opt/extDocRootDir" />
<jsp-attribute name="evalQuotedAndEscapedExpression" value="true" />
<jsp-attribute name="extendedDocumentRoot" value="/opt/extDocRootDir","${MY_CUSTOM_VARIABLE}" />
<reload-interval value="3"/>
<auto-encode-requests value="false"/>
<auto-encode-responses value="false"/>
<enable-directory-browsing value="false"/>
<enable-file-serving value="true"/>
<pre-compile-jsps value="false"/>
<enable-reloading value="true"/>
<enable-serving-servlets-by-class-name value="false" />
</web-ext>
Wenn Sie dieses Verhalten auf alle Webanwendungen anwenden möchten, können Sie die angepasste Eigenschaft com.ibm.wsspi.jsp.evalQuotedAndEscapedExpression des Web-Containers auf true setzen.
extendedDocumentRoot
Verwenden Sie die Funktion für erweiterte Dokumentstammverzeichnisse, wenn Anwendungen auf Dateien außerhalb des WAR-Verzeichnisses (Webarchiv) der Anwendung zugreifen müssen. Diese Funktion ermöglicht Ihnen, eine Anwendung mit einem oder mehreren Verzeichnispfaden zu konfigurieren, aus denen Sie statische Dateien und JSP-Dateien (Java ServerPages) bereitstellen können. Sie können dieses Attribut verwenden, wenn eine Anwendung Zugriff auf Dateien erfordert, die sich außerhalb des WAR-Verzeichnisses (Webarchiv) befinden. Wenn beispielsweise mehrere Anwendungen auf eine Gruppe gemeinsamer Dateien zugreifen müssen, können Sie diese gemeinsamen Dateien in einem Verzeichnis ablegen, mit dem Sie jede Anwendung in Form eines erweiterten Dokumentstammverzeichnisses verknüpfen können.
Zum Konfigurieren einer Anwendung mit einem erweiterten Dokumentstammverzeichnis fügen Sie das Attribut "extendedDocumentRoot" der Datei ibm-web-ext.xmi oder ibm-web-ext.xml der Anwendung als Dateiserviceattribut hinzu. Der Wert dieses Attributs ist eine durch Kommas begrenzte Liste mit Verzeichnissen, die als Stammverzeichnisposition für die statischen Dateien dienen.
<fileServingAttributes xmi:id="FileServingAttribute_1" name="extendedDocumentRoot" value="/opt/extDocRootDir"/>
- Eine Anforderung für die Ressource "http://localhost:9080/Kontextstammverzeichnis/sample.html" erfordert, dass sich die Datei sample.html in der Verzeichnisstruktur /opt/extDocRootDir/sample.html befindet.
- Eine Anforderung für die Ressource "http://localhost:9080/Kontextstammverzeichnis/myDir/sample.gif" erfordert, dass sich die Datei sample.gif in der Verzeichnisstruktur /opt/extDocRootDir/myDir/sample.gif befindet.
<?xml version="1.0" encoding="UTF-8"?>
<web-ext
xmlns="http://websphere.ibm.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://websphere.ibm.com/xml/ns/javaee http://websphere.ibm.com/xml/ns/javaee/ibm-web-ext_1_0.xsd"
version="1.0">
<file-serving-attribute name="extendedDocumentRoot" value="/opt/extDocRootDir" />
<jsp-attribute name="evalQuotedAndEscapedExpression" value="true" />
<jsp-attribute name="extendedDocumentRoot" value="/opt/extDocRootDir", "${MY_CUSTOM_VARIABLE}"/>
<reload-interval value="3"/>
<auto-encode-requests value="false"/>
<auto-encode-responses value="false"/>
<enable-directory-browsing value="false"/>
<enable-file-serving value="true"/>
<pre-compile-jsps value="false"/>
<enable-reloading value="true"/>
<enable-serving-servlets-by-class-name value="false" />
</web-ext>
Zum Konfigurieren einer Anwendung mit einem erweiterten Dokumentstammverzeichnis, aus dem JSP-Dateien bereitgestellt werden, fügen Sie das Attribut "extendedDocumentRoot" der Datei ibm-web-ext.xmi oder ibm-web-ext.xml als JSP-Attribut hinzu. Der Wert dieses Attributs ist eine durch Kommas begrenzte Liste mit Verzeichnissen, die als Stammverzeichnisposition für die JSP-Dateien dienen.
<jspAttributes xmi:id="JSPAttribute_1" name="extendedDocumentRoot" value="/opt/extDocRootDir"/>
<?xml version="1.0" encoding="UTF-8"?>
<web-ext
xmlns="http://websphere.ibm.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://websphere.ibm.com/xml/ns/javaee http://websphere.ibm.com/xml/ns/javaee/ibm-web-ext_1_0.xsd"
version="1.0">
<file-serving-attribute name="extendedDocumentRoot" value="/opt/extDocRootDir" />
<jsp-attribute name="evalQuotedAndEscapedExpression" value="true" />
<jsp-attribute name="extendedDocumentRoot" value="/opt/extDocRootDir", "${MY_CUSTOM_VARIABLE}" />
<reload-interval value="3"/>
<auto-encode-requests value="false"/>
<auto-encode-responses value="false"/>
<enable-directory-browsing value="false"/>
<enable-file-serving value="true"/>
<pre-compile-jsps value="false"/>
<enable-reloading value="true"/>
<enable-serving-servlets-by-class-name value="false" />
</web-ext>
Sie können das Attribut extendedDocumentRoot auch verwenden, um eine WebSphere-Variable auf mehreren Knoten im entsprechenden Verzeichnis zu definieren.
<jspAttributes xmi:id="JSPAttribute_2" name="extendedDocumentRoot"
value="${MY_CUSTOM_VARIABLE}"/>
<jsp-attribute name="extendedDocumentRoot"
value="${MY_CUSTOM_VARIABLE}" />
Für diese Angabe gilt Folgendes: angepasste_Variable ist
die WebSphere-Variable, die Sie auf mehreren Knoten definieren möchten.<?xml version="1.0" encoding="UTF-8"?>
<com.ibm.ejs.models.base.extensions.webappext:WebAppExtension xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI"
xmlns:com.ibm.ejs.models.base.extensions.webappext="webappext.xmi" xmi:id="WebAppExtension_1"
reloadInterval="3"
reloadingEnabled="true"
fileServingEnabled="true">
<webApp href="WEB-INF/web.xml#WebApp_ID/">
<fileServingAttributes xmi:id="FileServingAttribute_1" name="extendedDocumentRoot"
value="/opt/extDocRootDir/">
<jspAttributes xmi:id="JSPAttribute_1" name="extendedDocumentRoot"
value="/opt/extDocRootDir/">
<com.ibm.ejs.models.base.extensions.webappext:WebAppExtension>
<?xml version="1.0" encoding="UTF-8"?>
<web-ext
xmlns="http://websphere.ibm.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://websphere.ibm.com/xml/ns/javaee http://websphere.ibm.com/xml/ns/javaee/ibm-web-ext_1_0.xsd"
version="1.0">
<file-serving-attribute name="extendedDocumentRoot" value="/opt/extDocRootDir" />
<jsp-attribute name="evalQuotedAndEscapedExpression" value="true" />
<jsp-attribute name="extendedDocumentRoot" value="/opt/extDocRootDir","${MY_CUSTOM_VARIABLE}" />
<reload-interval value="3"/>
<auto-encode-requests value="false"/>
<auto-encode-responses value="false"/>
<enable-directory-browsing value="false"/>
<enable-file-serving value="true"/>
<pre-compile-jsps value="false"/>
<enable-reloading value="true"/>
<enable-serving-servlets-by-class-name value="false" />
</web-ext>
Wenn die Anforderung eine gültige Teilanforderung für eine Begrüßungsdatei ist, wird ein Fehler vom Typ 404 zurückgegeben. Wenn sich die JSP-Datei in einer JAR-Datei befindet und das Attribut "reloadEnabled" auf "true" gesetzt ist, wird die Zeitmarke der JAR-Datei zu Neukompilierungszwecke für isOutDated-Prüfungen verwendet. Der Standardwert für diesen Parameter ist "null".

Ein Modul von Java EE Version 5 oder einer höheren Version kann jedoch in einer Anwendung, die Dateien einer älteren Java EE-Version als Version 5 enthält, koexistieren.
Die Dateien ibm-webservices-ext.xmi, ibm-webservices-bnd.xmi, ibm-webservicesclient-bnd.xmi, ibm-webservicesclient-ext.xmi und ibm-portlet-ext.xmi können die Dateierweiterung ".xmi" weiterhin verwenden.
sptcfgieClassId
Zeigt die COM-Klassen-ID des Java-Plug-ins für Internet Explorer an.
Die <jsp:plugin>-Tags verwenden diesen Wert. Die Standard-Klassen-ID lautet clsid:8AD9C840-044E-11D1-B3E9-00805F499D93
javaEncoding
Gibt die Codierung an, die für die Generierung der .java-Datei und die Kompilierung durch den Java-Compiler verwendet wird. Setzen Sie diesen Parameter, wenn die Seitencodierung Ihrer JSP-Dateien nicht UTF-8-konform ist. Wenn "javaEncoding" definiert ist, wird die Codierung mit dem Argument -encoding an den Java-Compiler übergeben. Beachten Sie, dass die Codierung von Jikes nicht unterstützt wird. Die Standardcodierung ist UTF-8. Dieser Parameter erfordert eine Neugenerierung der Java-Quelle.
jdkSourceLevel
Dieser JSP-Engineparameter wurde in WebSphere Application Server Version 6.1 eingeführt. Verwenden Sie diesen Parameter anstelle des Parameters compileWithAssert, auch wenn compileWithAssert in Version 6.1 weiterhin funktioniert.
- Der Wert 13 inaktiviert alle neuen Sprachfunktionen von JDK 1.4, JDK 5.0, JDK 6.0 und JDK 7.0.
- Der Wert 14 aktiviert die Verwendung der Zusicherungsfunktion und inaktiviert alle neuen Sprachfunktionen von JDK 5.0, JDK 6.0 und JDK 7.0.
- Der Wert 15 aktiviert die Verwendung der Zusicherungsfunktion und inaktiviert alle neuen Sprachfunktionen von JDK 6.0 und JDK 7.0.
- Der Wert 16 aktiviert die Verwendung der Zusicherungsfunktion und inaktiviert alle neuen Sprachfunktionen von JDK 7.0.
- Der Wert 17 aktiviert die Verwendung der neuen Features von JDK 7.0.
- Der Wert 18 aktiviert die Verwendung der neuen Features von JDK 8.0.
jspClassLoaderLimit
WebSphere Application Server erstellt ein Objekt des Typs JSPExtensionClassLoader für jede JSP in einer Anwendung. Dies kann dazu führen, dass diese Objekte viel nativen Speicher belegen, was wiederum zu einer Ausnahme des Typs OutOfMemoryException führen kann. Dieser ganzzahlige Wert bestimmt, wie viele JSPExtensionClassLoader-Objekte im Speicher geladen bleiben.
<jspAttributes xmi:id="JSPAttribute_1" name="jspClassLoaderLimit" value="1500"/>
jspClassLoaderExclusionList
Während jspClassLoaderLimit die Anzahl der im Speicher geladenen JSPExtensionClassLoader-Objekte angibt, gibt diese durch Kommas begrenzte Liste mit JSP-Werten an, welche JSPs nicht entladen werden sollen, unabhängig davon, welcher Grenzwert mit jspClassLoaderLimit definiert wurde.
<jspAttributes xmi:id="JSPAttribute_2" name="jspClassLoaderExclusionList" value="/test/RappHTML2.jsp,/test/RappHTML4.jsp"/>
jsp.file.extensions
Für JSP-Dateien mit anderen Erweiterungen als den vier Standarderweiterungen .jsp, .jspx, .jsw und .jsv können die Erweiterungen mit diesem Parameter konfiguriert werden. Diese Erweiterungen werden den Standarderweiterungen hinzugefügt.
Die bevorzugte Methode sieht vor, ein <jsp-property-group> in web.xml zu erstellen und ein <url-pattern>-Tag für jede Erweiterung hinzuzufügen.
Die JSP-Engine kann eine Liste mit Dateierweiterungen, die durch Doppelpunkt oder Semikolon abgetrennt sind, bearbeiten. Beispiel: .ext1;.ext2:.extn
keepgenerated
Zeigt an, dass die Java-Dateien, die vom JSP-Compiler während der Umsetzungsphase des Prozesses generiert wurden, aufbewahrt werden sollen. Der Standardwert für diesen Parameter ist false. Dieser Parameter erfordert eine Neugenerierung der Java-Quelle.
keepGeneratedclassfiles
Zeigt an, dass die Java-Dateien, die vom JSP-Compiler während der Umsetzungsphase des Prozesses generiert wurden, gespeichert werden sollen. Der Standardwert für diesen Parameter ist true. Dieser Parameter erfordert eine Neugenerierung der Java-Quelle.
modifyPageContextVariable
Während der Übersetzung einer kompilierten Tag-Datei verwendet der JSP-Container implizit die Variable pageContext für das Objekt PageContext. Die Verwendung der Variablen pageContext als implizite Variable in Tag-Dateien entspricht nicht der JSP-Spezifikation. Wenn bei Anwendungen, die eine lokale Variable des Typs pageContext in ihren Tag-Dateien verwenden, Kompilierungsfehler auftreten, setzen Sie das Attribut modifyPageContextVariable auf true, um die Verwendung der Variablen pageContext im generierten Java-Code für Tag-Dateien zu verhindern.
recompileJspOnRestart
Bestimmt, ob eine JSP-Datei erneut übersetzt und kompiliert wird, wenn sie nach dem Start der Anwendung zum ersten Mal angefordert wird. Wenn "recompileJspOnRestart" den Wert "false" hat, wird bei der ersten Anforderung gegebenenfalls trotzdem eine JSP-Datei kompiliert, sofern der Parameter disableJspRuntimeCompilation nicht auf true gesetzt ist. Der Standardwert für diesen Parameter ist false.
reloadEnabled
Bestimmt, ob eine JSP-Datei zur Laufzeit übersetzt und kompiliert wird, wenn die JSP-Datei oder ihre Abhängigkeiten (siehe trackDependencies) geändert werden.
Wenn "reloadEnabled" den Wert "false" hat, wird bei der ersten Anforderung gegebenenfalls trotzdem eine JSP-Datei kompiliert, sofern der Parameter disableJspRuntimeCompilation nicht auf "true" gesetzt ist. Der Standardwert für diesen Parameter ist false.
Wenn dieser Parameter der JSP-Engine nicht angegeben ist, wird der äquivalente Parameter des Web-Containers für das erneute Laden der Webmodulklassen verwendet. Für eine Anwendung, deren Implementierungsdeskriptor Servlet 2.2 verwendet, ist die Standardeinstellung jedoch true. Damit sollen Anwendungen, die von WebSphere Application Server Version 4.x migriert werden, unterstützt werden.
reloadInterval
Wenn die Option für erneutes Laden aktiviert ist, bestimmte der Wert des Parameters reloadInterval die Wartezeit zwischen den Überprüfungen einer JSP-Datei.
Wenn der Parameter reloadInterval beispielsweise den Wert 5 hat, prüft die JSP-Engine erst dann, ob eine JSP-Datei veraltet ist, wenn die letzte Prüfung dieser Art mehr als fünf Sekunden zurückliegt. Je höher der Wert für reloadInterval ist, desto seltener prüft die JSP-Engine, ob eine JSP-Datei erneut geladen werden muss. Wenn dieser Parameter der JSP-Engine nicht angegeben ist, wird der äquivalente Parameter des Web-Containers für das erneute Laden der Webmodulklassen verwendet. Für eine Anwendung, deren Implementierungsdeskriptor Servlet 2.2 verwendet, ist die Standardeinstellung jedoch "5" (Sekunden). Damit sollen Anwendungen, die von WebSphere Application Server Version 4.x migriert werden, unterstützt werden.
reusePropertyGroupConfigOnInclude

scratchdir
Gibt das Verzeichnis an, in dem die generierten Klassendateien erstellt werden.
Die Systemeigenschaft com.ibm.websphere.servlet.temp.dir wird verwendet, um die Option scratchdir auf dem gesamten Server festzulegen. Der Parameter scratchdir der JSP-Engine hat Vorrang vor der Systemeigenschaft com.ibm.websphere.servlet.temp.dir. Der Standardwert für diesen Parameter ist Profilstammverzeichnis/temp. Dieser Parameter erfordert eine Neugenerierung der Java-Quelle.

Wenn Sie beispielsweise die Position des temporären JSP-Verzeichnisses ebenfalls in Profilstammverzeichnis/config/temp ändern oder wenn Sie das temporäre JSP-Verzeichnis unter dem temporären Konfigurationsverzeichnis im Verzeichnis Profilstammverzeichnis/config/temp/temp positionieren, können Verarbeitungsfehler auftreten.
gotchatrackDependencies
Wenn das erneute Laden aktiviert ist, bestimmt trackDependencies, ob die JSP-Engine Änderungen an den angeforderten JSP-Dateiabhängigkeiten und an der JSP-Datei selbst überwachen soll.
- Dateien, die statisch in die JSP-Datei aufgenommen werden
- Tag-Dateien, die in der JSP-Datei referenziert werden (ausgenommen Tag-Dateien, die sich in JAR-Dateien befinden)
- TLD-Dateien, die in der JSP-Datei referenziert werden (ausgenommen Tag-Dateien, die sich in JAR-Dateien befinden)
useFullPackageNames
Wenn useFullPackageNames den Wert true hat, generiert und lädt die JSP-Engine JSP-Klassen mit dem vollständigen Paketnamen.
Standardmäßig werden alle JSP-Klassen im selben Paket generiert. (Weitere Informationen finden Sie im Artikel "Pakete und Verzeichnisse für generierte Dateien mit den Erweiterungen .java und .class".) Der Klassenlader der JSP-Engine kann JSP-Klassen laden, wenn sie sich alle im selben Paket befinden.
Die Standardmethode, die darin besteht, alle JSP-Klassen im selben Paket zu generieren, hat den Vorteil, dass dabei kleinere Dateisystempfade entstehen. Vollständige Paketnamen haben den Vorteil, dass die Konfiguration von vorkompilierten JSP-Klassendateien als Servlets in der Datei web.xml ohne Verwendung des Attributs "jsp-file" aktiviert werden. Dies führt dazu, dass ein einzelner Klassenlader entsteht, der Klassenlader der Webanwendung, der zum Laden aller JSP-Klassen dieses Typs verwendet wird. Wenn die Konfigurationsattribute useFullPackageNames und disableJspRuntimeCompilation beide auf true gesetzt sind, wird ebenfalls nur ein Klassenlader für das Laden aller JSP-Klassen verwendet. Dies gilt auch dann, wenn die JSP-Dateien nicht als Servlets in der Datei web.xml konfiguriert sind.
Wenn useFullPackageNames auf true gesetzt ist, generiert der Stapelcompiler die Datei generated_web.xml im Verzeichnis WEB-INF des Webmoduls. Diese Datei enthält Servletkonfigurationsdaten für jede JSP-Datei, die übersetzt und kompiliert wurde. Die Daten können in die Datei web.xml des Webmoduls kopiert werden, damit die JSP-Dateien als Servlets vom Web-Container hochgeladen werden. Beachten Sie, dass eine JSP-Datei, die auf diese Weise als Servlet konfiguriert wird, zur Laufzeit nicht erneut geladen wird, falls sie geändert wurde. Der Grund dafür ist, dass die JSP-Datei als reguläres Servlet behandelt wird und Anforderungen an das Servlet nicht durch die JSP-Engine geleitet werden. Dieser Parameter erfordert eine Neugenerierung der Java-Quelle.
useImplicitTagLibs
Die JSP-Engine erkennt tsx und jsx als Präfixe von Tagbibliotheken, die von der JSP-Engine bereitgestellt werden. Wenn tsx oder jsx als Präfixe für die Tagbibliothek eines Kunden verwendet werden, setzt die Tagbibliothek des Kunden die implizite Tagbibliothek außer Kraft. Die implizite Tagbibliothek wird jedoch noch von der JSP-Engine zwischengespeichert. Wenn Sie diesen Parameter explizit auf "false" setzen, wird die Engine angewiesen, die implizite Tagbibliothek nicht zwischenzuspeichern und Ressourcen zu speichern. Der Standardwert für diesen Parameter ist "true".
Der Standard-URL für die tsx-Tags lautet http://websphere.ibm.com/tags/tsx. Der Standard-URI für die jsx-Tags lautet http://websphere.ibm.com/tags/jsx.
Möglicherweise müssen Sie das Präfix für die tsx- oder jsx-Tagbibliothek mit einem anderen URI als dem Standard-URI definieren. Es ist auch möglich, dass Sie dasselbe Bibliothekspräfix mit einem anderen URI definieren müssen. In diesen beiden Fällen können Sie die angepasste Eigenschaft com.ibm.wsspi.jsp.allowtaglibprefixredefinition festlegen, um Übersetzungsfehler zu vermeiden. Weitere Informationen finden Sie in der Beschreibung der angepassten JSP-Eigenschaften.
useInMemory
Gibt an, dass die JSP-Engine Java-Code im Systemspeicher übersetzen und kompilieren soll.
- Übersetzte Java-Datei in das Dateisystem schreiben
- Java-Datei aus dem Dateisystem laden
- Code in eine Klassendatei kompilieren
- Klasse in das Dateisystem schreiben
- Klassendatei in einen Klassenlader laden

useJikes
Gibt an, ob Jikes für die Kompilierung von Java-Quellen verwendet wird.
Anmerkung: Jikes ist nicht im Lieferumfang von WebSphere Application Server enthalten. Der Standardwert für diesen Parameter ist false. Dieser Parameter erfordert eine Neugenerierung der Java-Quelle.
usePageTagPool
Aktiviert oder inaktiviert die Wiederverwendung angepasster Tag-Handler für einzelne JavaServer Pages. Der Standardwert für diesen Parameter ist false. Dieser Parameter erfordert eine Neugenerierung der Java-Quelle.
useThreadTagPool
Wenn Tag-Handler-Pools auf Threadebene verwendet werden, können Tag-Handler in mehreren Vorkommen einer angepassten Aktion in allen JSP-Seiten eines Webmoduls in mehreren Anforderungen wiederverwendet werden. Der Standardwert für diesen Parameter ist false. Dieser Parameter erfordert eine Neugenerierung der Java-Quelle.
- Die release-Methode des Tag-Handlers muss dessen Status zurücksetzen und alle privaten Ressourcen, die der Handler verwendet hat, freigeben. Die JSP-Engine stellt sicher, dass die release-Methode aufgerufen wird, bevor die Garbage-Collection für den Tag-Handler ausgeführt wird.
- In der doEndTag-Methode muss jeder Instanzstatus, der dieser Instanz zugeordnet ist, zurückgesetzt werden.
verbose
Gibt an, dass der Compiler bei der Kompilierung des generierten Java-Quellcodes eine ausführliche Ausgabe erstellen soll. Wenn Sie diesen Parameter auf "true" setzen, wird die Option "–verbose" an den Java-Compiler übermittelt. Der Standardwert für diesen Parameter ist "false". Dieser Parameter erfordert eine Neugenerierung der Java-Quelle.
- Die release-Methode des Tag-Handlers muss dessen Status zurücksetzen und alle privaten Ressourcen, die der Handler verwendet hat, freigeben. Die JSP-Engine stellt sicher, dass die release-Methode aufgerufen wird, bevor die Garbage-Collection für den Tag-Handler ausgeführt wird.
- In der doEndTag-Methode muss jeder Instanzstatus, der dieser Instanz
zugeordnet ist, zurückgesetzt werden.Vorsicht:Wenn Sie Seiten- oder Thread-Tag-Pooling verwenden, wird die Methode "doEndTag" im Falle einer Ausnahme nicht aufgerufen, und wenn ein Servicestatus vorliegt, der bereinigt werden muss, muss die Schnittstelle "TryCatchFinally" implementiert werden.