Fehlerbehebung und Unterstützung

Verfahren für die Fehlerbehebung und Informationen zur Selbsthilfe unterstützen Sie dabei, Probleme schnell zu erkennen und zu beheben. In diesem Abschnitt finden Sie potenzielle Lösungen für Probleme im Zusammenhang mit dem SAP-Connector.

Unterstützte Formate für die Werte in Feldern des Typs 'Datum/Uhrzeit'

In der folgenden Tabelle werden die unterstützten Formate für die Werte in Feldern des Typs 'Datum/Uhrzeit' für alle Aktivitäten des SAP-Connectors beschrieben.
Tabelle 1. Formate für Werte in Feldern des Typs 'Datum/Uhrzeit'
Feld Eingabeparameter (Nicht-Starteraktivitäten) Ausgabeparameter (Starter- und Nicht-Starteraktivitäten)
Datum jjjj-mm-tt

oder

jjjjmmtt

jjjjmmtt
Zeit hh:mm:ss

oder

hhmmss

hhmmss

Für die Eingabe- und Ausgabeparameter in den Werten für Datums- und Uhrzeitfelder der SAP-Connectorversion 6.0.x oder einer früheren Version werden die Formate jjjj-mm-tt und hh:mm:ss unterstützt.

Ausnahmebedingung, die ausgelöst wird, wenn Orchestrierungen mit Aktivitäten 'RFC empfangen' und 'IDOC empfangen' mit derselben RFC-Programm-ID implementiert werden

Problem: Wenn Sie Orchestrierungen mit Aktivitäten 'RFC empfangen' und 'IDOC empfangen' mit derselben RFC-Programm-ID in SAP implementieren, wird die folgende Ausnahmebedingung ausgelöst:

java.lang.RuntimeException: An attempt to start a JCoIDocServer failed. There might be an existing JCoServer with the same server configuration, else try restarting your server
at com.ibm.j2ca.sap.inbound.SapJCoServerBuilder.verfiyServerConfiguration(SapJCoServerBuilder.java:403)
at com.ibm.j2ca.sap.inbound.SapJCoServerBuilder.createServer(SapJCoServerBuilder.java:96)
at com.ibm.j2ca.sap.inbound.SAPEventListenerManager.buildEventListener(SAPEventListenerManager.java:149)
at com.ibm.j2ca.sap.inbound.SAPEventListenerManager.startEventListeners(SAPEventListenerManager.java:132)
at com.ibm.j2ca.sap.inbound.EndpointManager.addEndpoint(EndpointManager.java:68)
at com.ibm.j2ca.sap.SAPResourceAdapter.endpointActivation(SAPResourceAdapter.java:266)
at com.approuter.module.sap.activity.ReceiveIDOCActivity.activate(ReceiveIDOCActivity.java:222)
at com.approuter.maestro.activities.BaseModule.activate(BaseModule.java:296)
at com.approuter.maestro.vm.Program.start(Program.java:796)
at com.approuter.maestro.vm.Kernel.startOrchestration(Kernel.java:704)
at com.approuter.maestro.management.Loader$1.run(Loader.java:461)
at java.lang.Thread.run(Thread.java:736)

Ursache: SAP JCo lässt nur die Ausführung einer Instanz von JCoServer mit einem bestimmten Satz von Serverkonfigurationseinstellungen innerhalb einer JVM (Java Virtual Machine) zu. Es kann kein weiterer JCoServer mit derselben Serverkonfiguration in derselben JVM ausgeführt werden. JCo löst einen Fehler aus, der darauf hinweist, dass der Server nicht erneut gestartet werden kann. Die Aktivität 'IDOC empfangen' und die Aktivität 'RFC empfangen' unterstützen die Verwendung derselben SAP-Programm-ID bei der Orchestrierung nicht.

Lösung: Stellen Sie sicher, dass Sie Orchestrierungen implementieren, in denen die Aktivität 'RFC empfangen' und 'IDOC empfangen' verschiedene SAP-Programm-IDs verwenden, und erstellen Sie separate Endpunkte für IDOC/RFC.

Empfohlene Konfigurationen zur Vermeidung des Fehlers, dass die maximale Anzahl von 202 Dialogen überschritten wurde

Bei der Arbeit mit dem SAP-Connector werden die folgenden Konfigurationen empfohlen, wenn der Fehler angezeigt wird, dass die maximale Anzahl von 202 Dialogen ('conversations') überschritten wurde:

Fehler:

LOCATION   CPIC (TCP/IP) on local host with Unicode
ERROR      max no of 202 conversations exceeded
TIME       <tag> <datum> <zeit> <jahr>
RELEASE    720
COMPONENT  CPIC (TCP/IP) with Unicode

Die folgenden Empfehlungen hängen von der Auslastung und der Anzahl der parallelen Anforderungen ab:

  1. Verringern Sie den Zeitlimitwert in der Endpunktkonfiguration, sodass die nicht genutzten Verbindungen automatisch beendet werden.
  2. Konfigurieren Sie die Cast Iron-Laufzeit und das SAP-Gateway so, dass mehr RFC-Verbindungen unterstützt werden.
    1. Setzen Sie die Umgebungsvariable CPIC_MAX_CONV auf einen Wert > 100 für die Cast Iron-Laufzeit. Aktualisieren Sie maestro.sh so, dass die Umgebungsvariable festgelegt wird. Die Schritte werden im Zeitplan A beschrieben.
    2. Erhöhen Sie den Profilwert gw/max_conn und gw/max_sys auf dem SAP-Gateway, sodass viele parallele Verbindungen unterstützt werden. Wenn Speicherengpässe auftreten, erhöhen Sie außerdem die Werte für gw/max_overflow_size und gw/max_shm_req.
    3. Setzen Sie die maximale Anzahl von Verbindungen im SAP-Endpunkt auf einen realistischen Wert. Je nach Auslastung und parallelen Anforderungen generiert die Einheit oder sie empfängt.
    4. Setzen Sie die Anzahl der Serverinstanzen im SAP-Endpunkt auf den Wert 10.
  3. Beispielwerte:
    SAP-Gateway
    
    gw/max_conn=2000, gw/max_sys=1200
    
    gw/max_overflow_size =40000000, gw/max_shm_req = 200 (dient zum Anpassen der Speicherzuordnung)
    
    CPIC_MAX_CONV=5000

Zeitplan A:

  1. Melden Sie sich an der Einheitenshell an. (Wenden Sie sich an den IBM Support, um den Schlüssel für die Einheitenshell für die Anmeldung an der Systemshell zu erhalten.)
  2. Wechseln Sie zum Ordner /usr/ironhide/bin. Erstellen Sie eine Sicherungskopie der Datei maestro.sh (kopieren Sie maestro.sh in maestro.sh.old).
  3. Bearbeiten Sie die Datei maestro.sh.
    move to line 
    #  Version of java currently in use.
    if [ -z $JAVA_HOME ]; then
      JAVA_HOME=/usr/java/default
    fi
    
    JAVA="${JAVA_HOME}/bin/java"
  4. Fügen Sie die folgende Zeile hinzu:
    ## maximum SAP conversations allowed
    export CPIC_MAX_CONV=500
  5. Speichern und schließen Sie die Datei.
  6. Beenden Sie die Systemshell und führen Sie den Befehl system restart aus, um die Einheitenlaufzeit erneut zu starten.

Upgrade der Java Runtime Environment (JRE) von 32- auf 64 Bit-Version durchführen

Problem: Wenn Sie ein SAP-Projekt haben, das in einer früheren Version der Einheit ausgeführt wird, und ein Upgrade der Einheit auf Version 7.0 oder höher durchführen, lassen sich die SAP-Projekte nicht starten und die folgenden Fehler treten auf:

  • Beispiele für Fehler, die in der WMC ausgelöst werden:
    Start of Orchestration config-
    url://SAP_BAPI/1.0/Default/Orchestrations/Orchestration failed:
    java.lang.ExceptionInInitializerError: Error
    getting the version of the native layer:
    java.lang.UnsatisfiedLinkError: sapjco3
    (/usr/ironhide/lib/thirdparty/libsapjco3.so:
    wrong ELF class: ELFCLASS32).
    Required SAP JCO library is not found.
    Install version 3.x SAP JCO library (.dll or .so based on platform)
  • Beispiele für Ausnahmebedingungen, die im Protokoll maestro.out aufgezeichnet werden:
    java.lang.UnsatisfiedLinkError: sapjco3 (/usr/ironhide/lib/thirdparty/libsapjco3.so: wrong ELF class: ELFCLASS32)
    	at java.lang.ClassLoader.loadLibraryWithPath(ClassLoader.java:1030)
    	at java.lang.ClassLoader.loadLibraryWithClassLoader(ClassLoader.java:994)
    	at java.lang.System.loadLibrary(System.java:507)
    	at com.sap.conn.jco.rt.DefaultJCoRuntime.loadLibrary(DefaultJCoRuntime.java:481)
    	at com.sap.conn.jco.rt.DefaultJCoRuntime.registerNativeMethods(DefaultJCoRuntime.java:347)
    	at com.sap.conn.jco.rt.JCoRuntime.registerNatives(JCoRuntime.java:1108)
    	at com.sap.conn.rfc.driver.CpicDriver.<clinit>(CpicDriver.java:954)
    	at java.lang.J9VMInternals.initializeImpl(Native Method)
    	at java.lang.J9VMInternals.initialize(J9VMInternals.java:200)
    	at com.sap.conn.rfc.engine.DefaultRfcRuntime.getVersion(DefaultRfcRuntime.java:43)
    	at com.sap.conn.rfc.api.RfcApi.RfcGetVersion(RfcApi.java:237)
    	at com.sap.conn.jco.rt.MiddlewareJavaRfc.<clinit>(MiddlewareJavaRfc.java:215)
    	at java.lang.J9VMInternals.initializeImpl(Native Method)
    	at java.lang.J9VMInternals.initialize(J9VMInternals.java:200)
    	at com.sap.conn.jco.rt.DefaultJCoRuntime.initialize(DefaultJCoRuntime.java:77)
    	at com.sap.conn.jco.rt.JCoRuntimeFactory.<clinit>(JCoRuntimeFactory.java:23)
    	at java.lang.J9VMInternals.initializeImpl(Native Method)
    	at java.lang.J9VMInternals.initialize(J9VMInternals.java:200)
    	at java.lang.Class.forNameImpl(Native Method)
    	at java.lang.Class.forName(Class.java:182)
    	at com.sap.conn.jco.JCo.createJCo(JCo.java:52)
    	at com.sap.conn.jco.JCo.<clinit>(JCo.java:26)
     at java.lang.J9VMInternals.initializeImpl(Native Method)
    	at java.lang.J9VMInternals.initialize(J9VMInternals.java:200)
    	at java.lang.Class.forNameImpl(Native Method)
    	at java.lang.Class.forName(Class.java:182)
    	at com.approuter.module.sap.SAPActivator.checkSAPInstalled(SAPActivator.java:101)
    	at com.approuter.module.sap.activity.SAPBaseActivity.checkSapSetup(SAPBaseActivity.java:498)
    	at com.approuter.module.sap.activity.SAPBaseActivity.generateSchemas(SAPBaseActivity.java:172)
    	at com.approuter.module.sap.activity.SapSendRfcData.activate(SapSendRfcData.java:112)
    	at com.approuter.maestro.activities.BaseModule.activate(BaseModule.java:301)
    	at com.approuter.maestro.vm.Program.start(Program.java:768)
    	at com.approuter.maestro.vm.Kernel.startOrchestration(Kernel.java:739)
    	at com.approuter.maestro.management.Loader$1.run(Loader.java:455)
    	at java.lang.Thread.run(Thread.java:738)
    java.lang.ExceptionInInitializerError: Error getting the version of the native layer: java.lang.UnsatisfiedLinkError: sapjco3 (/usr/ironhide/lib/thirdparty/libsapjco3.so: wrong ELF class: ELFCLASS32)
     at com.sap.conn.jco.rt.MiddlewareJavaRfc.<clinit>(MiddlewareJavaRfc.java:227)
     at java.lang.J9VMInternals.initializeImpl(Native Method)
    	at java.lang.J9VMInternals.initialize(J9VMInternals.java:200)
    	at com.sap.conn.jco.rt.DefaultJCoRuntime.initialize(DefaultJCoRuntime.java:77)
     at com.sap.conn.jco.rt.JCoRuntimeFactory.<clinit>(JCoRuntimeFactory.java:23)
     at java.lang.J9VMInternals.initializeImpl(Native Method)
    	at java.lang.J9VMInternals.initialize(J9VMInternals.java:200)
    	at java.lang.Class.forNameImpl(Native Method)
    	at java.lang.Class.forName(Class.java:182)
    	at com.sap.conn.jco.JCo.createJCo(JCo.java:52)
     at com.sap.conn.jco.JCo.<clinit>(JCo.java:26)
    at java.lang.J9VMInternals.initializeImpl(Native Method)
    	at java.lang.J9VMInternals.initialize(J9VMInternals.java:200)
    	at java.lang.Class.forNameImpl(Native Method)
    	at java.lang.Class.forName(Class.java:182)
    	at com.approuter.module.sap.SAPActivator.checkSAPInstalled(SAPActivator.java:101)
    	at com.approuter.module.sap.activity.SAPBaseActivity.checkSapSetup(SAPBaseActivity.java:498)
    	at com.approuter.module.sap.activity.SAPBaseActivity.generateSchemas(SAPBaseActivity.java:172)
    	at com.approuter.module.sap.activity.SapSendRfcData.activate(SapSendRfcData.java:112)
    	at com.approuter.maestro.activities.BaseModule.activate(BaseModule.java:301)
    	at com.approuter.maestro.vm.Program.start(Program.java:768)
    	at com.approuter.maestro.vm.Kernel.startOrchestration(Kernel.java:739)
    	at com.approuter.maestro.management.Loader$1.run(Loader.java:455)
    	at java.lang.Thread.run(Thread.java:738)
    2013-08-22 09:18:25.013 SEVERE [T-10] [orc:SAP_BAPI/1.0/Default/Orchestrations/Orchestration] [com.approuter.module.common.util.LogHelper] Required SAP JCO native library is not found. Install version 3.x SAP JCO native library(.dll or .so based on platform).
    java.lang.RuntimeException: java.lang.ExceptionInInitializerError: Error getting the version of the native layer: java.lang.UnsatisfiedLinkError: sapjco3 (/usr/ironhide/lib/thirdparty/libsapjco3.so: wrong ELF class: ELFCLASS32)
    	at com.approuter.module.sap.activity.SAPBaseActivity.checkSapSetup(SAPBaseActivity.java:509)
    	at com.approuter.module.sap.activity.SAPBaseActivity.generateSchemas(SAPBaseActivity.java:172)
    	at com.approuter.module.sap.activity.SapSendRfcData.activate(SapSendRfcData.java:112)
    	at com.approuter.maestro.activities.BaseModule.activate(BaseModule.java:301)
    	at com.approuter.maestro.vm.Program.start(Program.java:768)
    	at com.approuter.maestro.vm.Kernel.startOrchestration(Kernel.java:739)
    	at com.approuter.maestro.management.Loader$1.run(Loader.java:455)
    	at java.lang.Thread.run(Thread.java:738)
    Caused by: java.lang.ExceptionInInitializerError: Error getting the version of the native layer: java.lang.UnsatisfiedLinkError: sapjco3 (/usr/ironhide/lib/thirdparty/libsapjco3.so: wrong ELF class: ELFCLASS32)
     at com.sap.conn.jco.rt.MiddlewareJavaRfc.<clinit>(MiddlewareJavaRfc.java:227)
     at java.lang.J9VMInternals.initializeImpl(Native Method)
    	at java.lang.J9VMInternals.initialize(J9VMInternals.java:200)
    	at com.sap.conn.jco.rt.DefaultJCoRuntime.initialize(DefaultJCoRuntime.java:77)
     at com.sap.conn.jco.rt.JCoRuntimeFactory.<clinit>(JCoRuntimeFactory.java:23)
     at java.lang.J9VMInternals.initializeImpl(Native Method)
    	at java.lang.J9VMInternals.initialize(J9VMInternals.java:200)
    	at java.lang.Class.forNameImpl(Native Method)
    	at java.lang.Class.forName(Class.java:182)
    	at com.sap.conn.jco.JCo.createJCo(JCo.java:52)
    	at com.sap.conn.jco.JCo.<clinit>(JCo.java:26)
    	at java.lang.J9VMInternals.initializeImpl(Native Method)
    	at java.lang.J9VMInternals.initialize(J9VMInternals.java:200)
    	at java.lang.Class.forNameImpl(Native Method)
    	at java.lang.Class.forName(Class.java:182)
    	at com.approuter.module.sap.SAPActivator.checkSAPInstalled(SAPActivator.java:101)
    	at com.approuter.module.sap.activity.SAPBaseActivity.checkSapSetup(SAPBaseActivity.java:498)

Ursache:

In den früheren Versionen von Cast Iron Appliance (Version 6.3 und frühere Versionen) wurden 32-Bit-Versionen der SAP-JCO-Bibliotheken verwendet. Ab Cast Iron Appliance Version 7.0 müssen Sie die 64-Bit-Versionen der SAP-JCO-Bibliotheken verwenden.

Lösung:

Löschen Sie die 32-Bit-Versionen der SAP-JCO-Bibliotheken sapjco3.jar und libsapjco3.so und laden Sie die 64-Bit-Versionen der SAP-JCO-Bibliotheken, indem Sie die folgenden Schritte ausführen:

Upgrade der SAP-JCO-Bibliotheken:

  1. Setzen Sie sich mit der technischen SAP-Unterstützung in Verbindung, um die komprimierten Dateien für die folgenden SAP-Komponenten anzufordern:
    • SAP JCO Release 3.0.6 oder eine höhere Version für Linux AMD (64-Bit-Plattform). Beispiel: sapjco3-linuxx86_64-3.0.10.tgz.
  2. Wechseln Sie in der Webmanagementkonsole (WMC) zu System > Upgrade > Connector-Bibliotheken aktualisieren.
  3. Wählen Sie im Fenster zur Aktualisierung der Connector-Bibliotheken den SAP-Connector in der Connectorliste aus.
  4. Löschen Sie die vorhandenen SAP-JCO-Bibliotheken, die in der Liste der installierten Dateien angezeigt werden, und starten Sie die Einheit (Appliance) erneut.
  5. Wechseln Sie nach dem Neustart zu System > Upgrade > Connector-Bibliotheken aktualisieren.
  6. Laden Sie die neu heruntergeladenen 64-Bit-Versionen der SAP-JCO-Bibliotheken hoch. Nach dem Hochladen der Bibliotheken werden Sie aufgefordert, die Einheit erneut zu starten.
  7. Starten Sie die Einheit erneut und starten Sie die SAP-Projekte. Alle SAP-Orchestrierungen werden ohne Fehler gestartet.



Feedback | Notices


Timestamp icon Letzte Aktualisierung: Friday, November 8, 2013


http://pic.dhe.ibm.com/infocenter/wci/v7r0m0/topic/com.ibm.wci.doc/SAP_troubleshooting.html