Regeln für die Migration von Anwendungen auf Liberty

Die Migrationsregeln von WebSphere Application Server Traditional auf Liberty erkennen Anwendungsprobleme, die eine Änderung erfordern, wenn Sie eine Anwendung von WebSphere Application Server Traditional in Liberty, Liberty Core, Open Liberty, Liberty for Java auf IBM Cloud oder Liberty auf Cloudplattformen anderer Anbieter implementieren.

WebSphere Traditional auf Liberty

Regelname Regelbeschreibung Automatisierte Korrektur
Vermeiden Sie die Verwendung der veralteten Methoden WSSecurityHelper revokeSSOCookies und getLTPACookieFromSSOToken Diese Regel kennzeichnet veraltete Methoden der Klasse WSSecurityHelper, insbesondere revokeSSOCookies und getLTPACookieFromSSOToken, die auf Liberty nicht verfügbar sind. Die Funktionalität von revokeSSOCookies wird durch die logout() Methode aus der Java Servlet-3.0 Spezifikation ersetzt, während getLTPACookieFromSSOToken durch WebSecurityHelper.getSSOCookieFromSSOToken() ersetzt wird. was-to-liberty.yml
org.openrewrite.java.liberty.WebSphereUnavailableSSOMethods
CommonJ-SDO-API in Liberty nicht verfügbar Die CommonJ-SDO-API wird in WebSphere Liberty oder Open Liberty nicht bereitgestellt. Nein
Verwenden Sie nicht WSPrincipal.getCredential( ) Diese Regel kennzeichnet die veraltete Methode com.ibm.websphere.security.auth.WSPrincipal.getCredential(). Diese Methode ist in der Version WebSphere Application Server veraltet 5.1 was-to-liberty.yml
org.openrewrite.java.liberty.ReplaceWSPrincipalGetCredential
Verwenden Sie nicht denselben XmlType Namen für mehrere Klassen Bei der Migration von WebSphere traditional zu Liberty können doppelte @XmlType Namen in JAX-WS-Klassen Laufzeitfehler verursachen. Nein
Servernamen in Liberty abrufen Um den Servernamen auf Liberty zu erhalten, müssen Sie zunächst einen <jndiEntry> mit einem Wert von ${wlp.server.name} in der Serverkonfiguration konfigurieren. Dann können Sie die Methode javax.naming.InitialContext lookup(String) verwenden, die den Namen des von Ihnen konfigurierten <jndiEntry> enthält, um den Servernamen zu erhalten. was-to-liberty.yml
org.openrewrite.java.liberty.ServerName
JAR-Dateien in Unterordnern werden nicht geladen In Liberty werden JAR-Dateien in Unterordnern des Ordners WEB-INF/lib nicht automatisch geladen. Zur Vermeidung von Fehlern müssen Sie die JAR-Datei in den Ordner WEB-INF/lib verschieben. Nein
Namespace-Werte in ra.xml müssen mit der Deskriptorversion konsistent sein Der Liberty-Server kann Connectormodule nicht laden, wenn der Implementierungsdeskriptor ra.xml einen Namespace-Wert hat, der nicht mit der definierten Version übereinstimmt. was-to-liberty.yml
org.openrewrite.xml.liberty.ConnectorDDNamespaceRule
Unterschiede in WebSphere-MBeans prüfen Überprüfen Sie Ihre Anwendung auf die Verwendung von WebSphere MBeans hin. Die Funktionalität und die Objektnamen von MBeans, die in Liberty bereitgestellt werden, unterscheiden sich von den MBeans in WebSphere Traditional. Nein
SOAP over Java Message Service (JMS) nicht verfügbar Liberty unterstützt kein SOAP über Java Message Service (JMS) Nein
Einige JSF-Pakete sind in Liberty nicht verfügbar Einige JSF-Implementierungspakete sind in Liberty nicht verfügbar. Einige Anwendungen erfordern ein Refactoring, damit nur API-Pakete verwendet oder Implementierungsklassen gebündelt werden. Nein
Einige WSSecurityHelper-Methoden sind nicht verfügbar Einige WSSecurityHelper-Methoden sind in Liberty nicht verfügbar. Nein
Einige WebSphere-APIs und -SPIs für Ausnahmen nicht verfügbar Einige WebSphere-APIs und -SPIs für Ausnahmen sind in Liberty nicht verfügbar. Nein
Einige WebSphere Extension Helper-SPIs nicht verfügbar Einige WebSphere Extension Helper-SPIs sind in Liberty nicht verfügbar. Nein
Einige WebSphere-APIs und -SPIs für Sicherheit nicht verfügbar Einige WebSphere-APIs und -SPIs für Sicherheit sind in Liberty nicht verfügbar. Nein
Einige WebSphere Web Services APIs und SPIs für JAX-WS sind nicht verfügbar Einige WebSphere Web Services APIs und SPIs für JAX-WS sind auf Liberty nicht verfügbar. Nein
Einige WebSphere Web Services APIs und SPIs für SOAP sind nicht verfügbar Einige WebSphere Web Services APIs und SPIs für SOAP sind auf Liberty nicht verfügbar. Nein
Einige WebSphere Webdienste-APIs und SPIs für WS-Adressierung sind nicht verfügbar Einige WebSphere Web-Services-APIs und SPIs für WS-Addressing sind auf Liberty nicht verfügbar. Nein
Einige WebSphere Webdienste-APIs und SPIs für WS-Security sind nicht verfügbar Einige WebSphere Web Services APIs und SPIs für WS-Security sind auf Liberty nicht verfügbar. Nein
Einige WebSphere z/OS Optimized Local Adapters-APIs sind nicht verfügbar Einige com.ibm.websphere.ola-APIs und EJB-Implementierungen sind in Liberty nicht verfügbar. Nein
Activity Session-Service ist nicht verfügbar Der Activity Session-Service ist in Liberty nicht verfügbar. Nein
Apache Axis2-API ist nicht verfügbar Die org.apache.axis2-APIs sind in Liberty nicht verfügbar. Nein
APIs für Erweiterungsregistry sind nicht verfügbar Die APIs für die Erweiterungsregistry sind in Liberty nicht verfügbar. Nein
ISC-APIs (Integrated Solutions Console) sind nicht verfügbar Die ISC-APIs (Integrated Solutions Console) sind in Liberty nicht verfügbar. Nein
Das Page List Servlet ist nicht verfügbar Die WebSphere-Servlet-API wurde durch Servlet 3.0-Standardfunktionen abgelöst. Diese Regel kennzeichnet die Verwendung der Klassen ClientList, MLNotFoundException, PageListServlet und PageNotFoundException von com.ibm.servlet , da sie von Liberty nicht unterstützt werden. Nein
Tivoli Performance Viewer-SPIs sind nicht verfügbar Die Tivoli Performance Viewer-SPIs sind in Liberty nicht verfügbar. Nein
UDDI-APIs (Universal Description, Discovery and Integration) sind nicht verfügbar Die UDDI-APIs (Universal Description, Discovery and Integration) sind in Liberty nicht verfügbar. Nein
WebSphere Application Client-APIs nicht verfügbar Die WebSphere Application Client-APIs sind in Liberty nicht verfügbar. Nein
WebSphere-APIs für Anwendungsprofile sind nicht verfügbar Die WebSphere Application Client-APIs sind in Liberty nicht verfügbar. Nein
WebSphere Asynchronous Beans-API wurde durch eine neuere Implementierung abgelöst Die API com.ibm.websphere.asynchbeans wurde durch JSR 236, Concurrency Utilities for Java EE ersetzt. Nein
WebSphere Batch-API und -SPI sind nicht verfügbar Die WebSphere Batch-Programmierschnittstellen sind in Liberty nicht verfügbar. Nein
WebSphere Common Exception-APIs sind nicht verfügbar Die WebSphere Common Exception-APIs sind in Liberty nicht verfügbar. Nein
WebSphere-Connector-Architecture-APIs sind nicht verfügbar Die WebSphere-Connectorarchitektur-APIs sind in Liberty nicht verfügbar. Nein
WebSphere EJB Query-API ist nicht verfügbar Der WebSphere-EJB-Abfrageservice wird für Entity-Beans verwendet und ist in Liberty nicht verfügbar. Nein
WebSphere Enterprise JavaBeans-APIs und -SPIs sind nicht verfügbar Die WebSphere Enterprise JavaBeans-APIs und -SPIs sind in Liberty nicht verfügbar. Nein
WebSphere-Management-APIs und -SPIs sind nicht verfügbar Die WebSphere-Management-APIs und -SPIs sind in Liberty nicht verfügbar. Nein
WebSphere-APIs für ORB-Erweiterungen sind nicht verfügbar Die WebSphere-APIs für ORB-Erweiterungen sind in Liberty nicht verfügbar. Nein
WebSphere-PMI-APIs und -SPIs (Performance Monitoring Infrastructure) sind nicht verfügbar Die WebSphere-PMI-APIs und -SPIs (Performance Monitoring Infrastructure) sind in Liberty nicht verfügbar. Nein
WebSphere Portal-APIs sind nicht verfügbar Die WebSphere Portal-APIs sind in Liberty nicht verfügbar. Nein
WebSphere-RRD-SPIs (Remote Request Dispatcher) sind nicht verfügbar Die WebSphere-RRD-SPIs (Remote Request Dispatcher) sind in Liberty nicht verfügbar. Nein
WebSphere-Ressourcenadapter-APIs und -SPIs sind nicht verfügbar Die WebSphere-Ressourcenadapter-APIs und -SPIs sind in Liberty nicht verfügbar. Nein
WebSphere-Laufzeit-APIs und -SPIs sind nicht verfügbar Die com.ibm.websphere.runtime-APIs und -SPIs sind in Liberty nicht verfügbar. Nein
WebSphere-APIs für SMF-Aufzeichnung sind nicht verfügbar Die WebSphere-APIs für SMF-Aufzeichnung sind in Liberty nicht verfügbar. Nein
WebSphere Scheduler-API wurde durch eine neuere Implementierung abgelöst Die WebSphere-Scheduler-API wurde durch das Feature Enterprise JavaBeans Persistent Timers Version 3.2 abgelöst. Nein
WebSphere-SDO-APIs (Service Data Objects) sind nicht verfügbar Die API com.ibm.websphere.sdo ist in Liberty nicht verfügbar. Nein
WebSphere-SIB-APIs (Service Integration Bus) sind nicht verfügbar Die WebSphere-SIB-APIs (Service Integration Bus) sind in Liberty nicht verfügbar. Nein
WebSphere Servlet-API wurde durch eine neuere Implementierung abgelöst Die WebSphere-Servlet-API wurde durch Servlet 3.0-Standardfunktionen abgelöst. Nein
Die WebSphere ServletChain API wurde durch eine neuere Implementierung ersetzt Die WebSphere Servlet-API wird durch Servlet 3.0-Funktionalität ersetzt. Diese Regel kennzeichnet jeden Code, der com.ibm.websphere.servlet.filter.ServletChain verwendet, was bei Liberty nicht möglich ist. Verwenden Sie stattdessen javax.servlet.Filter und javax.servlet.FilterChain Nein
WebSphere Startup Beans Service-API wurde durch eine neuere Implementierung abgelöst Der WebSphere-Startup-Bean-Service ist in Liberty nicht verfügbar. Er wurde in EJB 3.1 durch die Startup-Beans abgelöst. Nein
WebSphere Studio Application Developer Integration Edition-APIs sind nicht verfügbar Die WebSphere Studio Application Developer Integration Edition-APIs sind in Liberty nicht verfügbar. Nein
WebSphere Work Area-APIs und -SPIs sind nicht verfügbar Die API com.ibm.websphere.workarea und die SPI com.ibm.wsspi.workarea sind in Liberty nicht verfügbar. Nein
WebSphere-Workload-Manager-APIs sind nicht verfügbar Die WebSphere-Workload-Manager-APIs sind in Liberty nicht verfügbar. Nein
WebSphere i18n-APIs und -SPIs sind nicht verfügbar Die API com.ibm.websphere.i18n.context und die SPI com.ibm.wsspi.i18n.context.util sind in Liberty nicht verfügbar. Nein
APIs und SPIs für WebSphere-Protokollierung und RAS sind nicht verfügbar Die WebSphere-APIs und -SPIs für Protokollierung und RAS sind in Liberty nicht verfügbar. Nein
Die WebSphere Web Services APIs und SPIs für WS-RemoteManagement (WS-RM) sind nicht verfügbar Die angegebenen WebSphere Web Services APIs und SPIs für WS-RemoteManagement werden auf Liberty nicht unterstützt, so dass die Anwendung aus Kompatibilitätsgründen geändert werden muss. Diese Regel wird für jede Java-Klasse einmal markiert. Nein
Die WebSphere Web Services APIs und SPIs für WS-ResourceFramework (WS-RF) sind nicht verfügbar Die WebSphere Web Services API und SPI für WS-ResourceFramework com.ibm.websphere.wsrf werden auf Liberty nicht unterstützt, so dass Anwendungsmodifikationen für die Kompatibilität erforderlich sind. Diese Regel wird für jede Java-Klasse einmal markiert. Nein
Datei persistence.xml muss an einer von der Spezifikation erkannten Positionen vorhanden sein Die Datei persistence.xml muss sich an einer Position befinden, die von der JPA-Spezifikation (Java Persistence API) erkannt wird. was-to-liberty.yml
org.openrewrite.xml.liberty.PersistenceXmlLocationRule
Verwendung der API WebSphere XPath, XQuery, and XSLT setzt Konfiguration voraus Zur Verwendung der API WebSphere XPath, XQuery, and XSLT müssen Anwendungen für die Verwendung der XML-Thin-Client-JAR-Datei konfiguriert werden, die von WebSphere Application Server Feature Pack for XML bereitgestellt wird. Nein
Verwendung der InitialContext-Standard-JNDI-Eigenschaften Verwenden Sie die Standardwerte für die JNDI-Eigenschaften java.naming.factory.initial und java.naming.provider.url, wenn Sie die Migration auf Liberty durchführen. was-to-liberty.yml
org.openrewrite.java.liberty.RemoveWas2LibertyNonPortableJndiLookup
Web Services Business Activity (WS-BA) ist nicht verfügbar Web Services Business Activity (WS-BA) ist in Liberty nicht verfügbar. Nein
Web Services-Richtliniensätze sind in Liberty nicht verfügbar In Liberty werden Richtliniensätze nicht mehr verwendet. Migrieren Sie zur Vermeidung von Fehlern Ihre JAX-WS-Anwendungen auf die Verwendung von Liberty WS-Policy und WS-Security. Nein
Zugriff auf JSF-Pakete anderer Anbieter setzt eine Konfiguration voraus Die meisten JSF-Implementierungspakete sind in Liberty nicht verfügbar. Einige dieser Pakete wurden den Klassenladeprogrammen anderer Anbieter zur Verfügung gestellt. Nein
Portierte JMS-Sitzungen mit lokalen Transaktionen funktionieren nicht in Liberty In WebSphere Application Server Traditional können Sie Anwendungen entwickeln, die JMS-Sitzungen mit lokalen Transaktionen nutzen. Wenn Sie diese Anwendungen auf Liberty portieren, verhalten sich diese Anwendungen anders oder sie funktionieren gar nicht. Nein
Unterschiede in der WebSphere z/OS Optimized Local Adapters-API Liberty unterstützt einige com.ibm.websphere.ola-APIs, aber es gibt Unterschiede bei der in WebSphere Traditional bereitgestellten Unterstützung. Nein
Verwendung des dynamischen Cache-Service prüfen Überprüfen Sie Ihre Anwendung auf die Verwendung des dynamischen Cache-Service hin. Liberty implementiert eine eingeschränkte Version des dynamischen Caches. Nein
Einige APIs anderer Anbieter sind in Liberty nicht verfügbar Einige APIs anderer Anbieter sind in Liberty nicht verfügbar und müssen einer Position hinzugefügt werden, die für das Klassenladeprogramm der Anwendung sichtbar ist. Nein
Verwendung der im System bereitgestellten Eclipse Equinox-APIs setzt eine Konfiguration voraus Liberty-Anwendungen müssen so konfiguriert werden, dass sie vom System bereitgestellte APIs von Drittanbietern enthalten, während diese in WebSphere Application Server traditionell automatisch verfügbar sind. Diese APIs bestehen aus Paketen von Apache Wink, Apache OpenJPA, Apache Aries, und Eclipse Equinox. Jede referenzierte API führt zu einer einzigen Kennzeichnung für das Projekt. Nein
com.tivoli-APIs anderer Anbieter sind in Liberty nicht verfügbar Diese Regel kennzeichnet die Verwendung nicht verfügbarer APIs von Drittanbietern, um die Komplexität der Migration zu bewerten. Wenn Ihre Anwendung diese APIs benötigt, stellen Sie sicher, dass die JAR-Dateien an einem Ort abgelegt werden, auf den der Classloader der Anwendung zugreifen kann, z. B. im Verzeichnis WEB-INF/lib. Wenn Sie die JAR-Dateien aufgrund von Lizenzierungs- oder anderen Problemen nicht einbinden können, entfernen Sie die Abhängigkeit von diesen APIs aus Ihrer Anwendung. Nein
org.apache-APIs anderer Anbieter sind in Liberty nicht verfügbar Diese Regel kennzeichnet die Verwendung nicht verfügbarer APIs von Drittanbietern, um die Komplexität der Migration zu bewerten. Wenn diese APIs benötigt werden, sollten ihre JAR-Dateien an einem Ort abgelegt werden, auf den der Classloader der Anwendung zugreifen kann, z. B. im Verzeichnis WEB-INF/lib. Wenn die JAR-Dateien nicht eingebunden werden können, sollte die Anwendung so geändert werden, dass die Abhängigkeit von diesen APIs aufgehoben wird. Nein
org.apache.aries-APIs anderer Anbieter sind in Liberty nicht verfügbar Diese Regel kennzeichnet die Verwendung nicht verfügbarer APIs von Drittanbietern zur Bewertung der Migrationskomplexität. Wenn diese APIs benötigt werden, legen Sie ihre JAR-Dateien an einem Ort ab, auf den der Classloader der Anwendung zugreifen kann, z. B. im Verzeichnis WEB-INF/lib. Wenn Sie die JAR-Dateien nicht einbinden können, ändern Sie die Anwendung, um die Abhängigkeit von diesen APIs zu beseitigen. Nein
org.codehaus.jackson-APIs anderer Anbieter sind in Liberty nicht verfügbar Diese Regel kennzeichnet nicht verfügbare APIs von Drittanbietern, um die Komplexität der Migration zu bewerten. Legen Sie bei Bedarf die entsprechenden JAR-Dateien an einem Ort ab, auf den der Classloader der Anwendung zugreifen kann, z. B. im Verzeichnis WEB-INF/lib. Wenn Sie die JAR-Dateien nicht einbinden können, entfernen Sie die Abhängigkeit von diesen APIs aus Ihrer Anwendung. Nein
Anwendung enthält generierte WSDL2Java-Klassen Die Anwendung enthält generierte WSDL2Java-Klassen, die in Liberty nicht unterstützt werden. Nein
Geändertes Verhalten bei Suche nach Enterprise JavaBeans in früheren Versionen von Liberty EJB-JNDI-Suchnamen müssen portierbare JNDI-Namespaces für die Migration auf eine Liberty-Version vor 20.0.0.12 verwenden. Eine Liste akzeptierter Namespaces finden Sie in der ausführlichen Hilfe. Nein
Verhaltensunterschied bei der Validierung von Web-Service-Hostnamen In Liberty wird der Hostname standardmäßig mit dem Zertifikat validiert, in WebSphere Traditional hingegen nicht. Die sicherste Lösung ist, ein Serverzertifikat mit dem korrekten Hostnamen zu erstellen. Alternativ können Sie die Validierung anpassen, indem Sie die Eigenschaft http.conduit.tlsClientParameters.disableCNCheck in der Datei ibm-ws-bnd.xml konfigurieren. Nein
Komponentenauthentifizierung wird in Liberty nicht unterstützt Diese Regel identifiziert Verbindungsfabriken oder Datenquellen, die sowohl von Containern als auch von Komponenten verwaltete Authentifizierungs-Aliase verwenden, was in Liberty nicht unterstützt wird. Stattdessen sollten Sie entweder die von Containern oder von Anwendungen verwaltete Authentifizierung mit den entsprechenden Ressourcenreferenzen verwenden. Um die vom Container verwaltete Authentifizierung für direkte Lookups zu aktivieren, setzen Sie die Eigenschaft enableContainerAuthForDirectLookups auf true und konfigurieren den Alias authData entsprechend. Nein
Entfernen Sie JAX-WS-Router-Module in Liberty Die HTTPRouter-Module müssen bei der Migration zu Liberty nicht angegeben werden, da sie standardmäßig enthalten sind. Diese Regel kennzeichnet das Vorhandensein von HTTPRouter-Modulen in WebSphere traditionellen Anwendungen mit JAX-WS Webservices. Nein
Namespace-Werte in application.xml müssen mit der Deskriptorversion konsistent sein Der Liberty-Server kann Anwendungsmodule nicht laden, wenn der Implementierungsdeskriptor application.xml einen Namespace-Wert hat, der nicht mit der definierten Version übereinstimmt. was-to-liberty.yml
org.openrewrite.xml.liberty.AppDDNamespaceRule
Namespace-Werte in ejb-jar.xml müssen mit der Deskriptorversion konsistent sein Der Liberty-Server kann EJB-Module nicht laden, wenn der Implementierungsdeskriptor ejb-jar.xml einen Namespace-Wert hat, der nicht mit der definierten Version übereinstimmt. was-to-liberty.yml
org.openrewrite.xml.liberty.EJBDDNamespaceRule
Namespace-Werte in web.xml müssen mit der Deskriptorversion konsistent sein Der Liberty-Server kann Webmodule nicht laden, wenn der Implementierungsdeskriptor web.xml einen Namespace-Wert hat, der nicht mit der definierten Version übereinstimmt. was-to-liberty.yml
org.openrewrite.xml.liberty.WebDDNamespaceRule
Vorkompilierte JSP-Klassen werden ignoriert Vorkompilierte JSP-Klassen, die für WebSphere Application Server Traditional generiert wurden, werden bei der Migration auf Liberty ignoriert. Die vorkompilierten JSP-Klassendateien sind nicht mit dem Liberty-Server kompatibel. Nein
Verwendung des Objekts javax.activation.DataHandler prüfen Überprüfen Sie Ihre Anwendung auf die Verwendung des javax.activation.DataHandler-Objekts hin. In Liberty kann jedes DataHandler-Objekt nur ein einziges Mal in einen Ausgabedatenstrom geschrieben werden. Nach dem Aufruf der Methode DataHandler.writeTo(OutputStream) kann das DataHandler-Objekt an keine weitere Methode mehr übergeben, zurückgegeben oder für spätere Verwendung gespeichert werden. Nein
Suchmethode InitialContext kann primitive Datentypen zurückgeben In Liberty wird der Typ des von der Suchmethode javax.naming.InitialContext zurückgegebenen Objekts bestimmt, indem der im Element jndiEntry gespeicherte Wert als Java-Literalzeichenfolge oder als primitiver Datentyp interpretiert wird. In WebSphere Traditional werden primitive Datentypen als Zeichenfolgen zurückgegeben. Nein
Verwendung der Schnittstellen java.sql.Driver und java.sql.DriverManager setzt möglicherweise eine Konfiguration voraus Wenn Sie die Schnittstellen java.sql.Driver und java.sql.DriverManager verwenden, um eine Verbindung zu einer Datenbank herzustellen, müssen Sie möglicherweise eine gemeinsam genutzte Bibliothek für den Datenbanktreiber in der Datei server.xml konfigurieren und in dem Element <application> darauf verweisen. Nein
Benutzerdefinierte EJB-Bindungspositionen wurden früher in Liberty ignoriert In den Liberty-Versionen vor 20.0.0.12 wurden EJB-Beans (Enterprise JavaBeans) nur an den Namespace java:[scope] gebunden. Benutzerdefinierte EJB-Bindungsattribute, die in WebSphere Application Server Traditional eine Spezifikation des JNDI-Namens erlauben, wurden in Liberty ignoriert. Nein

Java-Technologieunterstützung für Liberty

Regelname Regelbeschreibung Automatisierte Korrektur
Entity Enterprise JavaBeans (EJB) sind nicht verfügbar Entity Enterprise JavaBeans (EJB) wird in Liberty und Liberty Core nicht unterstützt. Nein
JAXR (Java API for XML Registries) ist nicht verfügbar JAXR (Java API for XML Registries) wird in Liberty und Liberty Core nicht unterstützt. Nein
Java EE-API für Anwendungsimplementierung ist nicht verfügbar Die Java EE-API für Anwendungsimplementierung wird in Liberty und Liberty Core nicht unterstützt. Nein
Java-Portlet wird nicht unterstützt Die Java-Portlet-API und deren Implementierungsdeskriptoren werden in Liberty für Produktionsumgebungen nicht unterstützt. Nein
Umstellung von JAX-RPC auf JAX-WS Diese Regel kennzeichnet die Verwendung von JAX-RPC-spezifischen Paketen und Konfigurationen Nein
Web Services Notification (WS-Notification) ist nicht verfügbar Web Services Notification (WS-Notification) wird in Liberty und Liberty Core nicht unterstützt. Nein
Kompatibilität mit JSF (JavaServer Faces) 1.1/1.2 Liberty unterstützt JSF 2.0 (JavaServer Faces). JSF 2.0 ist abwärtskompatibel mit JSF 1.2 und 1.1. Bei älteren JSF-Anwendungen können jedoch trotzdem Kompatibilitätsprobleme bei der Ausführung in Liberty auftreten. Nein
Stubklassen müssen eingeschlossen werden, wenn Sie ferne Enterprise JavaBeans (EJB) 2.x verwenden Ein Client muss Stubklassen einschließen, wenn Sie eine ferne EJB-Bean, die sich in WebSphere Application Server befindet, starten. Wenn die Ziel-EJB-Bean in einer separaten Anwendung ausgeführt wird und das EJB 2.x-Remote-Programmiermodell mit den EJBHome- und EJBObject-Schnittstellen verwendet, muss der Client auch Stub-Klassen in seine classpath.Stub-Klassen aufnehmen, die bei der Bereitstellung in Liberty nicht generiert werden. Nein
Transaktionsweitergabe wird für EJB-Remote-Schnittstellen (Enterprise JavaBeans) nicht unterstützt Wenn Sie EJB-Remote-Schnittstellen verwenden, unterstützt Liberty die Weitergabe abgehender und eingehender Transaktionen nicht. Standardmäßig sind EJB-Beans containergesteuert und haben ein Transaktionsattribut Required, d. h., sie verwenden Transaktionen. Nein
EXtensible Stylesheet Language (XSLT) 2.x ist nicht verfügbar EXtensible Stylesheet Language (XSLT) 1.0 wird in allen Editionen von WebSphere Application Server unterstützt. Wenn Ihre Anwendung einen XSLT 2.0-Prozessor erfordert, müssen Implementierungsklassen für Ihre Anwendung hinzugefügt werden. Nein
Spring-Anwendungen werden über eine nicht entpackte WAR-Datei möglicherweise nicht ausgeführt Diese Regel kennzeichnet Java-Code, der auf das org.springframework-Paket verweist, da Spring-Anwendungen auf Liberty möglicherweise nicht richtig funktionieren, wenn die WAR-Datei nicht erweitert wird. Um die Anwendung korrekt bereitzustellen, erweitern Sie sowohl die WAR- als auch die EAR-Datei in Verzeichnisse mit demselben Namen. In Liberty V8.5.5.8 und höher setzen Sie das Attribut autoExpand im Anwendungsmanager auf true, um die automatische Erweiterung von Anwendungsarchiven zu ermöglichen. Nein

Java-Technologieunterstützung für Liberty Core

Regelname Regelbeschreibung Automatisierte Korrektur
Aufrufe asynchroner Methoden für Enterprise JavaBeans (EJB) sind nicht verfügbar EJB Asynchronous-Methoden werden in allen WebSphere Application Server-Editionen mit Ausnahme von Liberty Core unterstützt. Nein
Enterprise JavaBeans (EJB) 1.x/2.x ist nicht verfügbar Enterprise JavaBeans (EJB) 1.x/2.x wird in allen Editionen von WebSphere Application Server mit Ausnahme von Liberty Core unterstützt. Wenn Ihre Anwendung in Liberty implementiert ist, müssen Sie das Feature ejb-3.2 aktivieren, das das Feature ejbHome-3.2 enthält. Nein
J2EE-Management-API ist nicht verfügbar Die J2EE-Management-API wird in allen Editionen von WebSphere Application Server mit Ausnahme von Liberty Core unterstützt. Nein
JWSDL (Java API for WSDL) ist nicht verfügbar JWSDL (Java API for WSDL) wird vom JAX-WS-Feature unterstützt, das in allen WebSphere Application Server-Editionen mit Ausnahme von Liberty Core verfügbar ist. Nein
JAX-WS (Java API for XML-Based Web Services) ist nicht verfügbar JAX-WS (Java API for XML-based Web Services) wird in allen WebSphere Application Server-Editionen mit Ausnahme von Liberty Core unterstützt. Nein
Java Authentication Service Provider Interface for Containers (JASPIC)-API ist nicht verfügbar Die Java Authentication Service Provider Interface for Containers (JASPIC)-API wird in allen Editionen von WebSphere Application Server mit Ausnahme von Liberty Core unterstützt. Nein
API JACC (Java Authorization Contract for Containers) ist nicht verfügbar Die Java Authorization Contract for Containers (JACC)-API wird in allen Editionen von WebSphere Application Server mit Ausnahme von Liberty Core unterstützt. Nein
JCA-API (Java Connector Architecture) ist nicht verfügbar Die JCA-API (Java Connector Architecture) wird in allen WebSphere Application Server-Editionen mit Ausnahme von Liberty Core unterstützt. Nein
Java EE Application Client ist nicht verfügbar Die Java EE Application Client-Module werden in allen WebSphere Application Server-Editionen mit Ausnahme von Liberty Core unterstützt. Nein
JMS (Java Message Service) ist nicht verfügbar Der Java Message Service (JMS) wird in allen WebSphere Application Server-Editionen mit Ausnahme von Liberty Core unterstützt. Nein
MDB (Message-driven Beans) ist nicht verfügbar MDB (Message-driven Beans) werden in allen WebSphere Application Server-Editionen mit Ausnahme von Liberty Core unterstützt. Nein
Remote-Schnittstellen für Enterprise JavaBeans (EJB) sind nicht verfügbar Remote-EJB-Schnittstellen werden in allen WebSphere Application Server-Editionen mit Ausnahme von Liberty Core unterstützt. Nein
SIP-Servlet-API (Session Initiation Protocol) ist nicht verfügbar Die Session Initiation Protocol (SIP)-Servlet-API und deren Implementierungsdeskriptoren werden in allen WebSphere Application Server-Editionen mit Ausnahme von Liberty Core unterstützt. Nein
Zeitgeberservice für Enterprise JavaBeans (EJB) ist verfügbar Der EJB-Zeitgeberservice wird in allen Editionen von WebSphere Application Server mit Ausnahme von Liberty Core unterstützt. Nein
Web Services Metadata for the Java Platform ist nicht verfügbar Die Spezifikation "Web Services Metadata for the Java Platform" wird vom JAX-WS-Feature unterstützt, das in allen WebSphere Application Server-Editionen mit Ausnahme von Liberty Core verfügbar ist. Nein

WebSphere Traditional auf Liberty Java EE 6

Regelname Regelbeschreibung Automatisierte Korrektur
Verwendung der im System bereitgestellten Apache OpenJPA-APIs setzt eine Konfiguration voraus Um die vom System bereitgestellten APIs von Drittanbietern in Liberty-Anwendungen zu verwenden, müssen Sie deren Einbindung konfigurieren, im Gegensatz zum traditionellen WebSphere Application Server, wo sie vorkonfiguriert sind. Diese APIs, wie die von Apache Wink, Apache OpenJPA, Apache Aries und Eclipse Equinox, kennzeichnen das Projekt für jede Referenz. Nein
Verwendung der im System bereitgestellten Apache Wink-APIs setzt eine Konfiguration voraus Liberty-Anwendungen erfordern eine Konfiguration, um die vom System bereitgestellten APIs von Drittanbietern einzubeziehen, im Gegensatz zum traditionellen WebSphere Application Server, wo sie automatisch verfügbar sind. Diese APIs, wie die von Apache Wink, Apache OpenJPA, Apache Aries und Eclipse Equinox, kennzeichnen das Projekt für jede Referenz. Nein

WebSphere traditionell zu Managed Liberty

Regelname Regelbeschreibung Automatisierte Korrektur
CommonJ-APIs „Timer“ und „Work Manager“ erkennen Die CommonJ-APIs „Timer“ und „Work Manager“ werden in WebSphere Liberty Version 22.0.0.1 und höher über die Funktion heritageAPIs-1.1 bereitgestellt. Die CommonJ-APIs „Timer“ und „Work Manager“ wurden durch JSR 236, Concurrency Utilities for Java EE, concurrent-1.0 ersetzt, aber jetzt bietet WebSphere Liberty Unterstützung für beide APIs. Concurrency Utilities wird für neue Anwendungen empfohlen, aber die CommonJ-APIs können verwendet werden, um die Modernisierung vorhandener Anwendungen zu beschleunigen. Nein
WebSphere Common Exception JDBC-APIs erkennen Wenn Sie Ausnahmen im Paket com.ibm.websphere.ce.cm verwenden, stellen Sie sicher, dass Sie WebSphere Liberty 22.0.0.1 oder höher verwenden. Nein
Verwendung des Quartz Scheduler erkennen Diese Regel markiert das Vorhandensein des Quartz Job Scheduler in der Anwendung. Nein
WebSphere DataStoreHelper APIs in Managed Liberty Diese Regel kennzeichnet die Verwendung von DataStoreHelpr APIs und SPIs.These APIs und SPIs werden auf WebSphere Liberty Version 22.0.0.1 und später durch die heratigeAPIs-1.1 und jdbc-4.x Funktionen bereitgestellt. Sie sind nicht verfügbar auf Managed Liberty, Open Liberty oder WebSphere Liberty Core. Nein
WebSphere JDBC APIs in Managed Liberty Diese Regel kennzeichnet die Verwendung von JDBC APIs und SPIs.These APIs und SPIs werden auf WebSphere Liberty Version 22.0.0.1 und später durch die heratigeAPIs-1.1 und jdbc-4.x Funktionen bereitgestellt. Sie sind nicht auf Managed Liberty, Open Liberty oder WebSphere Liberty Core verfügbar Nein

WebSphere Traditional auf Open Liberty

Regelname Regelbeschreibung Automatisierte Korrektur
Verwendung des Quartz Scheduler erkennen Diese Regel markiert das Vorhandensein des Quartz Job Scheduler in der Anwendung. Nein
CommonJ-APIs „Timer“ und „Work Manager“ erkennen Die CommonJ-APIs „Timer“ und „Work Manager“ werden in WebSphere Liberty Version 22.0.0.1 und höher über die Funktion heritageAPIs-1.1 bereitgestellt. Die CommonJ-APIs „Timer“ und „Work Manager“ wurden durch JSR 236, Concurrency Utilities for Java EE, concurrent-1.0 ersetzt, aber jetzt bietet WebSphere Liberty Unterstützung für beide APIs. Concurrency Utilities wird für neue Anwendungen empfohlen, aber die CommonJ-APIs können verwendet werden, um die Modernisierung vorhandener Anwendungen zu beschleunigen. Nein
WebSphere Common Exception JDBC-APIs erkennen Wenn Sie Ausnahmen im Paket com.ibm.websphere.ce.cm verwenden, stellen Sie sicher, dass Sie WebSphere Liberty 22.0.0.1 oder höher verwenden. Nein
WebSphere DataStoreHelper-APIs in Open Liberty Diese Regel kennzeichnet die Verwendung von DataStoreHelpr APIs und SPIs.These APIs und SPIs werden auf WebSphere Liberty Version 22.0.0.1 und später durch die heratigeAPIs-1.1 und jdbc-4.x Funktionen bereitgestellt. Sie sind nicht verfügbar auf Managed Liberty, Open Liberty oder WebSphere Liberty Core. Nein
WebSphere JDBC-APIs in Open Liberty Diese Regel kennzeichnet die Verwendung von JDBC APIs und SPIs.These APIs und SPIs werden auf WebSphere Liberty Version 22.0.0.1 und später durch die heratigeAPIs-1.1 und jdbc-4.x Funktionen bereitgestellt. Sie sind nicht auf Managed Liberty, Open Liberty oder WebSphere Liberty Core verfügbar Nein

WebSphere Traditionell auf WebSphere Liberty Base, ND und z/OS

Regelname Regelbeschreibung Automatisierte Korrektur
CommonJ-APIs „Timer“ und „Work Manager“ erkennen Die CommonJ-APIs „Timer“ und „Work Manager“ werden in WebSphere Liberty Version 22.0.0.1 und höher über die Funktion heritageAPIs-1.1 bereitgestellt. Die CommonJ-APIs „Timer“ und „Work Manager“ wurden durch JSR 236, Concurrency Utilities for Java EE, concurrent-1.0 ersetzt, aber jetzt bietet WebSphere Liberty Unterstützung für beide APIs. Concurrency Utilities wird für neue Anwendungen empfohlen, aber die CommonJ-APIs können verwendet werden, um die Modernisierung vorhandener Anwendungen zu beschleunigen. Nein
WebSphere Common Exception JDBC-APIs erkennen Wenn Sie Ausnahmen im Paket com.ibm.websphere.ce.cm verwenden, stellen Sie sicher, dass Sie WebSphere Liberty 22.0.0.1 oder höher verwenden. Nein
Verwendung des Quartz Scheduler erkennen Diese Regel markiert das Vorhandensein des Quartz Job Scheduler in der Anwendung. Nein
WebSphere DataStoreHelper-APIs in WebSphere Liberty Diese Regel kennzeichnet die Verwendung von DataStoreHelpr APIs und SPIs.These APIs und SPIs werden auf WebSphere Liberty Version 22.0.0.1 und später durch die heratigeAPIs-1.1 und jdbc-4.x Funktionen bereitgestellt. Sie sind nicht verfügbar auf Managed Liberty, Open Liberty oder WebSphere Liberty Core. Nein
WebSphere JDBC-APIs in WebSphere Liberty Diese Regel kennzeichnet die Verwendung von JDBC APIs und SPIs.These APIs und SPIs werden auf WebSphere Liberty Version 22.0.0.1 und später durch die heratigeAPIs-1.1 und jdbc-4.x Funktionen bereitgestellt. Sie sind nicht auf Managed Liberty, Open Liberty oder WebSphere Liberty Core verfügbar Nein