Beheben von Deserialisierungsfehlern nach einem Upgrade von AEM Forms
Nach dem Upgrade von Adobe Experience Manager (AEM) Forms auf Version 6.5.25 auf IBM WebSphere Application Server 9.0.5.28 treten Deserialisierungsfehler beim Serverstart und bei der Ausführung von Configuration Manager auf. Beheben Sie dieses Problem, indem Sie den NotSoSerial-Java-Agenten mit einem erforderlichen JVM-Argument konfigurieren, das seine Zulassungsliste beim Start initialisiert, da der Kunde keine CRX hat.
Beschreibung description
Umgebung
- Product: Adobe Experience Manager (AEM) Forms JEE
- Version: 6.5.25, aktualisiert von 6.5.23
- Anwendungsserver: IBM WebSphere Application Server 9.0.5.28
- Betriebssystem: Windows Server 2022 Datacenter
Problem/Symptome
- Nach dem Upgrade auf AEM Forms 6.5.25 und dem Starten der Anwendung auf IBM WebSphere werden viele Fehlermeldungen Deserialisierung für Klasse nicht zulässig in den Protokollen angezeigt.
- Die Fehler treten sowohl beim Serverstart als auch bei der Ausführung des Configuration Managers auf.
Lösung resolution
Gehen Sie wie folgt vor, um dieses Problem zu beheben:
-
Stellen Sie sicher, dass die
notsoserial.jar-Datei in dem Verzeichnis vorhanden ist, das von der in WebSphere bereitgestellten AEM-Anwendung verwendet wird, z. B. iminstalledAppsfür die Anwendungsserverinstanz. -
Erstellen Sie eine leere Datei mit dem Namen
is-deserialized.txtim selben Verzeichnis wienotsoserial.jar. -
Navigieren Sie in der WebSphere Admin Console zu
Servers >[ your server] > Java and Process Management > Process Definition > Java Virtual Machine > Generic JVM arguments. -
Fügen Sie das folgende JVM-Argument hinzu oder aktualisieren Sie es:
code language-none -javaagent:<path-to-notsoserial.jar> -Dnotsoserial.dryrun=<path-to-is-deserialized.txt> -
Ersetzen Sie
<path-to-notsoserial.jar>und<path-to-is-deserialized.txt>durch ihre vollständigen Pfade. -
Entfernen Sie alle vorherigen verwandten JVM-Argumente, es sei denn, Ihre Umgebung erfordert sie ausdrücklich:
code language-none -Dorg.kantega.notsoserial.allow=... -Djdk.serialFilter=... -
Speichern Sie die Änderungen und starten Sie den WebSphere-Anwendungs-Server neu.
-
Stellen Sie nach dem Neustart sicher, dass Deserialisierungsfehler während des Starts und der Ausführung von Configuration Manager nicht mehr in
SystemOut.logoder anderen relevanten Protokollen angezeigt werden.
Hinweise
- Die
-Dnotsoserial.dryrun-Eigenschaft erzwingt die Initialisierung der Zulassungsliste beim Start, die für einen ordnungsgemäßen Betrieb während des JNDI-Bootstrap erforderlich ist. - Behalten Sie diese JVM-Argumente für zukünftige Patches oder Upgrades bei. Wenn nach der Wartung erneut Deserialisierungsfehler auftreten, überprüfen Sie, ob diese Einstellungen weiterhin vorhanden sind.
- Der Speicherort von
notsoserial.jarhängt von der Bereitstellungsstruktur ab. Stellen Sie sicher, dass Sie auf den richtigen Pfad für Ihre Umgebung verweisen. - Über die oben genannten Schritte hinaus werden keine weiteren Schritte zur Fehlerbehebung bereitgestellt.