
Geschäftsprozesse laufen häufig verteilt über mehrere Teilnehmer, Anwendungen und Systeme. Anwendungen müssen so konzipiert werden, dass sie flexibel in dynamische Geschäftsprozesse integriert werden können. Die ABAP-Web-Services-Infrastruktur bietet ein Programmiermodell und Werkzeuge für die Entwicklung von Anwendungen, bei denen die Kernanwendung und der Integrationsteil lose miteinander gekoppelt sind. Dies ermöglicht die Anpassung an neue Integrationsanforderungen, ohne dass die Kernanwendung geändert werden muss. Mit diesem Programmiermodell lassen sich die erforderlichen Verbindungen zwischen den beteiligten ABAP-Systemen automatisch und konsistent konfigurieren.
Wichtigste Entität bei diesem Modell ist die Integrationsszenariodefinition, in der zusammengehörige Prozesse zwischen zwei oder mehreren Teilnehmern aus geschäftlicher Sicht gebündelt werden. Die Bausteine sind Interaktionsmuster, die als semantische Kontrakte bezeichnet werden und mehrere aufeinander bezogene Abfragen/Requests mit ihren entsprechenden Responses gruppieren. Für jede Interaktion können Sie eine oder mehrere Definitionen (sogenannte Kontrakte) anlegen, die für beide Partner bindend sind und die Basis für ihre Implementierungen bilden. Es gibt keine getrennten Consumer-(Outbound)- und Provider-(Inbound)-Modelle, die sich unabhängig entwickeln können.
Die interagierenden Beteiligten werden ebenfalls aus geschäftlicher Sicht beschrieben. Zur Konfigurationszeit wählt der Systemadministrator eine Integrationsszenariodefinition aus und ordnet diesen semantisch beschriebenen interagierenden Beteiligten konkrete Geschäftsanwendungsentitäten zu; Ergebnis ist eine komplett automatische Konfiguration aller beteiligten Verbindungen.
Die Adressierung basiert auf dem Konzept der Identifiable Business Contexts (IBCs). Weitere Informationen finden Sie unter Semantische Adressierung mit Identifiable Business Contexts (IBCs).
Semantische Kontrakte auswählen oder anlegen
Semantische Kontrakte definieren ein Interaktionsmuster zwischen zwei Beteiligten, die Aktoren genannt werden.
Mit Hilfe einer XML-Beschreibungsdatei können Sie auch eine Kopie eines semantischen Kontrakts anlegen. Weitere Informationen finden Sie unter Semantischen Kontrakt aus Schema anlegen.
Kontrakte aus semantischen Kontrakten anlegen
Aus semantischen Kontrakten können Sie einen oder mehrere Kontrakte anlegen, welche die zugehörigen Interfaces mit ihren Operationen und Signaturen (Message-Datentypen) angeben. Diese werden in einer Interaktion zwischen den Beteiligten bereitgestellt und konsumiert. Sie können mehrere Kontrakte für einen semantischen Kontrakt definieren, z.B. für unterschiedliche Versionen eines Service-Interface.
Mit Hilfe einer XML-Beschreibungsdatei können Sie auch eine Kopie eines Kontrakts anlegen. Weitere Informationen finden Sie unter Kontrakt aus Schema anlegen.
Kontrakte implementieren
Wenn eine Anwendung eine Seite eines Kontrakts implementiert, erfolgt dies mit Hilfe einer Kontraktimplementierung, die sowohl auf den Kontrakt als auch auf die entsprechenden Implementierungsartefakte zeigt.
Consumer-Factorys anlegen
Consumer-Factorys werden auf Consumer-Seite zum Aufbau von Verbindungen verwendet. Innerhalb der Consumer-Factory können Sie festlegen, dass der Sender und der Empfänger sowie die Authentifizierungsmethode anhand logischem Routing ermittelt werden.
Logische Ermittlung von Empfänger, Sender und Authentifizierung
Consumer-Mappings definieren
Mit Hilfe von Consumer-Mappings ermöglichen Sie die Kommunikation mit unterschiedlichen Providern anhand verschiedener Interfaces. Dabei werden die Operationen eines ursprünglichen Consumers (des Quell-Consumers) auf einen Ziel-Consumer abgebildet. Wenn alle Operationen auf den gleichen Ziel-Consumer abgebildet werden, wird dieses Mapping als Consumer-Mapping mit einzelnem Ziel bezeichnet. Ein solches Mapping kann wie ein normaler Consumer-Proxy konfiguriert werden und wird daher empfohlen.
Integrationsszenariodefinitionen anlegen
Die Integrationsszenariodefinition beschreibt eine Reihe zusammengehöriger Interaktionsmuster zwischen zwei oder mehreren Beteiligten. Diese Interaktionsmuster werden durch semantische Kontrakte auf semantischer Ebene abgebildet. Die interagierenden Beteiligten werden ebenfalls auf semantischer Ebene als abstrakte IBCs beschrieben.