Klassenlader für Webmodule konfigurieren

Sie können Werte festlegen, die das Klassenladerverhalten eines installierten Webmoduls steuern.

Vorbereitende Schritte

Dieser Artikel setzt voraus, dass Sie ein Webmodul in einem Anwendungsserver installiert haben.

Informationen zu diesem Vorgang

Konfigurieren Sie den Wert für die Reihenfolge der Klassenlader eines installierten Webmoduls. Standardmäßig hat ein Webmodul einen eigenen WAR-Klassenlader, der den Inhalt des Webmoduls aus den Verzeichnissen WEB-INF/classes und WEB-INF/lib lädt.

Eine Anwendungsklassenlader ist einem WAR-Klassenlader übergeordnet. Der Wert für den WAR-Klassenlader eines Anwendungsklassenladers bestimmt, ob der WAR-Klassenlader oder der Anwendungsklassenlader verwendet wird, um den Inhalt des Webmoduls zu laden.

Der Standardwert für die Klassenladerrichtlinie für WAR-Dateien ist Klassenlader für jede WAR-Datei der Anwendung. Wenn die Richtlinie auf Klassenlader für jede WAR-Datei der Anwendung gesetzt ist, empfängt jedes Webmodul seinen eigenen Klassenlader, dem der Klassenlader für Anwendungen übergeordnet ist. Wenn die Richtlinie auf Einzelner Klassenlader für gesamte Anwendung eingestellt ist, lädt das Klassenladeprogramm der Anwendung den Inhalt des Webmoduls und die EJB-Module, gemeinsam genutzte Bibliotheken, RAR-Dateien (Ressourcenadapterarchiv) und Java™-Abhängigkeitsdateien, die einer Anwendung zugeordnet sind. Die Konfiguration des übergeordneten Anwendungsklassenladers wirkt sich somit auf den WAR-Klassenlader aus. Sie können die Richtlinie auf der Seite "Laden von Klassen und Erkennung von Aktualisierungen" der Administrationskonsole festlegen.

Verwenden Sie die Administrationskonsole, um die Anwendungs- und WAR-Klassenlader zu konfigurieren.

Achtung: Wenn eine Anwendung aktiv ist, bewirkt die Änderung einer Anwendungseinstellung einen Neustart der Anwendung. In eigenständigen Servern wird die Anwendung nach dem Speichern der Änderung erneut gestartet. In Mehrserverprodukten wird die Anwendung erneut gestartet, wenn Sie die Änderung speichern und die Dateien auf dem Knoten, auf dem die Anwendung installiert ist, synchronisieren. Um zu steuern, wann die Synchronisation in Mehrserverprodukten stattfindet, wählen Sie auf der Seite mit den Konsoleneinstellungen die Option Änderungen mit Knoten synchronisieren ab.

Vorgehensweise

  1. Konfigurieren Sie den Anwendungsklassenlader.

    Einstellungen wie Einstellungen für das erneute Laden von Klassen für web und EJB-Module überschreiben, Abfrageintervall für aktualisierte Dateien und Klassenladerrichtlinie für WAR-Dateien können sich auf das Laden der Klassen für Webmodule auswirken.

    Wenn die Einstellung Klassenladerrichtlinie für WAR-Dateien auf Klassenlader für jede WAR-Datei der Anwendung gesetzt ist, erhält das Webmodul einen eigenen Klassenlader, und die Klassenladerrichtlinie für WAR-Dateien des Webmoduls definiert den Modus für einen Klassenlader für WAR-Dateien. Wenn die Einstellung auf Einzelner Klassenlader für gesamte Anwendung gesetzt ist, lädt der Anwendungsklassenlader den Inhalt des Webmoduls.

  2. Legen Sie die Reihenfolge der Klassenlader für das installierte Webmodul fest.

    Der Klassenladermodus des Webmoduls gibt an, ob der Klassenlader beim Laden einer Klasse zuerst den übergeordneten Anwendungsklassenlader oder den WAR-Klassenlader durchsucht. Der Standardwert sieht vor, dass zuerst im übergeordneten Anwendungsklassenlader und dann im WAR-Klassenlader gesucht werden soll.

    Wählen Sie einen der folgenden Werte für Reihenfolge der Klassenlader aus:

    Weitere Informationen finden Sie in der Redbooks-Veröffentlichung Understanding Class Loaders, insbesondere im Abschnitt "Changing the WAR class loader delegation mode", der sie Schritt für Schritt durch den Änderungsprozess führt.

    Option Bezeichnung
    Mit dem übergeordneten Klassenlader geladene Klassen zuerst Diese Option bewirkt, dass der Klassenlader die vom Produkt bereitgestellten Klassen den Klassen bevorzugt, die im Webmodul enthalten sind. Dieser Ansatz wird standardmäßig für die Klassenlader von Development Kit und WebSphere Application Server verwendet.
    Mit dem lokalen Klassenlader geladene Klassen zuerst Diese Option bewirkt, dass der Klassenlader die im Webmodul vorhandenen Klassen den Klassen bevorzugt, die vom Produkt bereitgestellt werden. Wenn dieselbe Klasse sowohl im Produkt als auch im Webmodul vorhanden ist, wird die Klasse aus dem Webmodul geladen.
    Achtung: Wenn Sie den Wert Mit dem lokalen Klassenlader geladene Klassen zuerst angeben, können Nachrichten des Typs "LinkageErrors" oder "ClassCastException" ausgegeben werden, wenn Sie überschriebene Klassen und nicht überschriebene Klassen gemischt verwenden.
  3. Klicken Sie auf OK.

Nächste Schritte

Speichern Sie die Änderungen in der Verwaltungskonfiguration.


Symbol, das den Typ des Artikels anzeigt. Taskartikel



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