
Sie wollen über die Web-Service-Laufzeit Point-to-Point Messages zwischen zwei Systemen austauschen. Dazu legen Sie Datentypen, (Fault-)Message-Typen und Service-Interfaces direkt im ES Repository an, damit diese zentral verfügbar sind. Da Service-Interfaces anerkannten Standards folgen, empfiehlt SAP vor allem für neue Entwicklungen diesen Ansatz.
Die hier beschriebene Vorgehensweise konzentriert sich auf die technisch notwendigen Schritte der Entwicklung und berücksichtigt keine Design-Richtlinien.
Sie haben zwei Anwendungen, zwischen denen Sie über den Outside-In-Ansatz Messages austauschen wollen. Die Service-Interfaces befinden sich in unterschiedlichen Produkten und unterschiedlichen Software-Komponentenversionen. Sie werden im folgenden als CONSUMER und PROVIDER bezeichnet.
Weitere Informationen: Organisation des ESR-Content
1. Inbound-Service-Interface modellieren
Modellieren Sie zunächst die Objekte des Service, der beim Provider aufgerufen werden soll:
Legen sie ein Inbound-Service-Interface in der Software-Komponentenversion PROVIDER an. Wählen Sie das zum Anwendungsfall passende Interface-Pattern.
Point-to-Point-Szenarien über die Web-Service-Laufzeit unterstützen die Interface-Pattern zustandslos (XI 3.0 kompatibel) , zustandslos , zustandsbehaftet und TU&C/C .
Legen Sie am Inbound-Service-Interface die für Ihren Service benötigten Operationen an. Service-Interfaces mit dem Interface-Pattern zustandslos (XI 3.0 kompatibel) unterstützen nur eine Operation.
Stellen Sie zunächst fest, ob schon Message-Typen und Datentypen für die von Ihnen angelegten Operationen existieren (zum Beispiel über die Suchhilfe ). Legen Sie bei Bedarf neue Message-Typen und Datentypen in der Software-Komponentenversion PROVIDER an.
Verweisen Sie von den Operationen auf den jeweiligen Message-Typ und von dem Message-Typ auf den Datentyp.
Für die Behandlung von anwendungsspezifischen Fehlern auf der Inbound-Seite können Sie optional Fault-Messages verwenden. Prüfen Sie, ob ein entsprechender Fault-Message-Typ bereits existiert, legen Sie bei Bedarf einen neuen Fault-Message-Typ in der Software-Komponentenversion PROVIDER an und verweisen Sie von den zugehörigen Operationen darauf.
Sie können Inbound-Service-Interfaces klassifizieren . Dies erleichtert Ihnen die Suche nach bestimmten Service-Interfaces. Sie können Service-Interfaces zum Beispiel nach Branche, Applikationsname oder Deployment-Unit klassifizieren.
2. Outbound-Service-Interface modellieren
Service-Interfaces können nur als Ganzes ausgeliefert werden (also inklusive aller Objekte, auf die verwiesen wird). Aus diesem Grund können die Operationen des benötigten Outbound-Service-Interface in der Software-Komponentenversion CONSUMER nicht auf die Interface-Objekte der Software-Komponentenversion PROVIDER verweisen. Sie müssen die Objekte daher kopieren:
Kopieren Sie das Inbound-Service-Interface aus der Software-Komponentenversion PROVIDER in die Software-Komponentenversion CONSUMER mit allen abhängigen Objekten.
Reklassifizieren Sie das Inbound-Service-Interface in der Software-Komponentenversion CONSUMER als Outbound-Service-Interface.
Stellen Sie sicher, dass der XML-Namensraum des jeweiligen (Fault‑)Message-Typs, auf den die jeweilige Operation des Outbound-Service-Interface verweist, mit dem XML-Namensraum des korrespondierenden (Fault‑)Message-Typs des Inbound-Service-Interface übereinstimmt. Weitere Informationen: XML-Namensräume .
Um den Message-Austausch später konfigurieren zu können, tragen Sie auf der Registerkarte Passende Service-Interfaces des Outbound-Service-Interface das Inbound-Service-Interface ein, das Sie in Schritt 1 kopiert haben.
Weitere Informationen: Passende Service-Interfaces für Point-to-Point-Kommunikation
Weitere Informationen: Service-Interface
Sie haben ein Outbound-Service-Interface und ein Inbound-Service-Interface mit jeweils einer oder mehreren Operationen angelegt. Sie können mit Hilfe der Proxy-Generierung Proxy-Objekte in ABAP oder Java generieren, um die Kommunikation zwischen diesen beiden Interfaces mit Hilfe der Proxy-Objekte zu implementieren.