Aktualisierung von Unternehmensanwendungsdateien
Java™-EE-Anwendungsdateien, die auf einem Server oder Cluster implementiert sind, können auf verschiedene Weise aktualisiert werden.
Option | Methode | Kommentare | Start nach der Aktualisierung |
---|---|---|---|
Aktualisierungsassistent der Administrationskonsole Weitere Informationen finden Sie im Artikel Unternehmensanwendungen über die Konsole aktualisieren. Wenn Sie eine einzelne Datei aus einer Java EE-Anwendung oder aus einem Java-EE-Modul entfernen möchten, lesen Sie die Informationen im Artikel "Unternehmensbezogene Dateien entfernen". |
Führen Sie die folgenden Schritte aus:
|
Gehen Sie auf der Seite Anwendungsaktualisierung
vorbereiten wie folgt vor:
|
Wählen Sie auf der Seite Unternehmensanwendungen die aktualisierte Anwendung aus, und klicken Sie auf Starten. |
![]() ![]() |
![]() ![]() |
![]() ![]() |
![]() ![]() Bei Installationen in einem überwachten Deployment-Manager-Verzeichnis führt das Produkt keinen automatischen Start einer Anwendung oder eines Moduls durch, wenn der Node Agent oder der Server nicht aktiv ist. |
![]() ![]() |
![]() ![]()
|
![]() ![]() |
![]() ![]() Bei Installationen in einem überwachten Deployment-Manager-Verzeichnis führt das Produkt keinen automatischen Start einer Anwendung oder eines Moduls durch, wenn der Node Agent oder der Server nicht aktiv ist. |
wsadmin-Scripts Lesen Sie den Artikel zur Aktualisierung installierter Anwendungen mit dem Scripting-Tool "wsadmin". |
Verwenden Sie den Befehl update oder den Befehl updateInteractive in einem Script oder an der Eingabeaufforderung. Nähere Informationen zu den Befehlen update und updateInteractive finden Sie im Artikel "Befehle für das AdminApp-Objekt". | Der Artikel "Erste Schritte mit wsadmin-Scripting" enthält eine Übersicht über wsadmin. | Starten Sie die Anwendung mit dem Befehl invoke und dem Attribut startApplication. Weitere Informationen zum Befehl invoke finden Sie im Artikel zu Befehlen für das Objekt "AdminControl". |
Java-APIs Lesen Sie die Informationen im Artikel "Verwaltungsprogramme verwenden (JMX)". |
Führen Sie zum Aktualisieren implementierter Anwendungen die im Artikel "Anwendungen durch Programmierung verwalten" beschriebenen Schritte aus. | Es gibt folgende Möglichkeiten der Anwendungsaktualisierung:
|
Rufen Sie die Methode startApplication mit AdminControl in einer ApplicationManager-MBean auf. |
Tool für schnelle Implementierung Sehen Sie sich die Artikel unter Schnelle Implementierung von J2EE-Anwendungen an. |
Führen Sie die folgenden Schritte aus:
|
Die Tools für schnelle Implementierung bieten die folgenden Vorteile:
|
Verwenden Sie zum Starten der Anwendung eine der vorherigen Optionen. Das Klicken auf Starten auf der Seite Unternehmensanwendungen ist die einfachste Option. |
Implementierung während des Betriebs und dynamisches Neuladen | Führen Sie die folgenden Schritte aus:
|
Falls Sie noch nicht mit der Verwendung von WebSphere Application Server
vertraut sind, verwenden Sie die Administrationskonsole, um die Anwendungen
zu aktualisieren. Diese Option ist einfacher. Die Implementierung während des Betriebs und das dynamische Neuladen sind weit komplizierter in der Ausführung. Sie müssen die Anwendungs- oder Moduldatei direkt auf dem Server bearbeiten, auf dem die Anwendung implementiert ist. Insbesondere neue Funktionen, die Annotationen verwenden, können in beträchtlichem Umfang mit der Hot-Deployment-Funktion interagieren. Weitere Informationen zu diesen Interaktionen bei der Implementierung von Anwendungen mit der Hot-Deployment-Funktion finden Sie unten im Abschnitt Attribut metadata-complete. |
Verwenden Sie zum Starten der Anwendung eine der vorherigen Optionen. Das Klicken auf Starten auf der Seite Unternehmensanwendungen ist die einfachste Option. |
Sie können .ear-Dateien, .jar-Dateien von Enterprise-Beans, .war-Dateien von Webmodulen, .sar-Dateien von SIP-Archiven (Session Initiation Protocol), .rar-Dateien von Connectors, .jar-Dateien von Anwendungsclients und alle anderen Dateien, die von einer installierten Anwendung verwendet werden, aktualisieren.
Wenn die Anwendung während der Ausführung aktualisiert wird, stoppt WebSphere Application Server die Anwendung automatisch, aktualisiert die Anwendungslogik und startet die Anwendung erneut. Falls die Anwendung nicht automatisch gestartet wird, starten Sie sie mit einer der Startoptionen manuell. Weitere Informationen zum erneuten Starten aktualisierter Anwendungen finden Sie auf der Webseite "Fine-grained recycle behavior" im IBM® WebSphere Developer Technical Journal: System management for WebSphere Application Server V6 -- Part 5 Flexible options for updating deployed applications.
Wenn Sie Modulmetadaten während der Ausführung der Anwendung aktualisieren, ist das erneute Starten der Anwendung möglicherweise nicht ausreichend, damit die Änderungen wirksam werden. Ändern Sie beispielsweise Deskriptoren in aktiven Anwendungen der Java EE Version 6, die Annotationen verwenden, müssen Sie die Anwendung erneut installieren. Wenn Sie Klassen in einer Anwendung ändern, die Klassenhierarchien einführen, entfernen oder ändern, und wenn sich diese Änderungen auf annotierte Klassen auswirken, müssen Sie auch die Anwendung erneut installieren.
Attribut metadata-complete
- Hat metadata-complete die Einstellung false, werden zwei neue Dateien geschrieben: die Datei web_merged.xml, die die Ergebnisse von in web.xml zusammengefassten Annotationsmetadaten enthält, und eine neue Datei, ibm-metadata.xml, die zusätzliche annotationsrelevante Daten enthält, die nicht in web_merged.xml gespeichert werden können. Die Datei web_merged.xml enthält auch zusätzliche Metadaten, die aus web-fragment.xml in JAR-Dateien unter dem Verzeichnis WEB-INF/lib des Webarchivs gelesen werden.
- Hat metadata-complete die Einstellung true, wird web_merged.xml nicht generiert und ibm-metadata.xml wird nicht erstellt. Die Datei ibm-metadata.xml wird nur generiert, wenn eine Datei des Typs web_merged.xml generiert wird.
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2011/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3.0.xsd"
version="3.0" metadata-complete="true">
<display-name>TestServlet30</display-name>
</web-app>
Die Dateien web.xml und web_fragment.xml müssen aktualisiert werden, wenn diese Dateien die Aktualisierung
der Hot-Deployment-Funktion steuern. Wird nur web_merged.xml aktualisiert, gehen die Änderungen für die
Hot-Deployment-Funktion verloren, wenn eine Verwaltungsaktion ausgeführt wird, die eine Neugenerierung von
web_merged.xml auslöst.Die Verarbeitung von web.xml in einer WAR-Datei und die Verarbeitung von ejb-jar.xml in einer EJBJAR-Datei verlaufen identisch. Wenn web.xml fehlt oder metadata-complete die Einstellung false hat, wird für eine WAR-Datei die Datei web_merged.xml erstellt. Wenn die Datei ejb-jar.xml fehlt oder metadata-complete die Einstellung false hat, wird für eine EJBJAR-Datei die Datei ejb-jar_merged.xml erstellt.
In jedem Fall wird bei der Erstellung einer zusammengefassten XML-Datei eine Datei mit dem Namen ibm-metadata.xml erstellt. (Das gilt nur, wenn die zusammengefasste XML-Datei tatsächlich erstellt wird.)
Wenn bei der Implementierung die Einstellung des Attributs metadata-complete von false in true geändert wird, wird die XML-Datei (web.xml oder ejb-jar.xml) erstellt oder ausgetauscht, es wird keine zusammengefasste XML-Datei und keine Datei des Typs ibm-metadata.xml erstellt.
- Die Einstellung des Attributs metadata-complete in der Datei web.xml interagiert mit der EJB-IN-WAR-Verarbeitung.
- Wenn die WAR-Datei keinen EJB-Inhalt hat, wird keine EJB-IN-WAR-Verarbeitung durchgeführt.
- Die Implementierung kann die Einstellung des Attributs metadata-complete für die Datei web.xml oder ejb-jar.xml unabhängig ändern.
- Wenn eine der zusammengefassten XML-Dateien erstellt wird, wird die Datei ibm-metadata.xml erstellt. (Wird keine zusammengefasste XML-Datei erstellt, wird ibm-metadata.xml nicht erstellt.)
Hinsichtlich EJB-IN-WAR kommen die folgenden Regeln zur Anwendung:
- Ist die Einstellung des Attributs metadata-complete für web.xml auf true festgelegt und ist keine Datei ejb-jar.xml vorhanden, wird keine EJB-IN-WAR-Verarbeitung durchgeführt, selbst wenn die WAR-Datei EJB-Annotationen enthält.
- Ist die Einstellung des Attributs metadata-complete für web.xml auf false festgelegt (oder fehlt web.xml) und ist keine Datei ejb-jar.xml vorhanden, wird die EJB-IN-WAR-Verarbeitung nur durchgeführt, wenn die WAR-Datei EJB-Annotationen enthält.
- Ist eine Datei ejb-jar.xml vorhanden, wird die Einstellung des Attributs metadata-complete für die Datei web.xml nicht verwendet, um zu bestimmen, welche EJB-Verarbeitung durchgeführt wird. Ist eine Datei ejb-jar.xml vorhanden, wird die Art der EJB-IN-WAR-Verarbeitung durch die Einstellung des Attributs metadata-complete der Datei ejb-jar.xml bestimmt.