Show TOC

Plain-HTTP-Empfänger-Adapter konfigurierenLocate this document in the navigation structure

Verwendung

Der Plain-HTTP-Ausgang ist ein Service der Integration Engine. Er wird angesprochen, wenn das technische Routing für den logischen Empfänger aus dem logischen Routing einen entsprechenden Kommunikationskanal ermittelt. Die Payload der Message wird per HTTP an eine HTTP-Adresse gesendet, ohne dass sie um einen Umschlag angereichert wird.

Vorgehensweise
  1. Der Plain-HTTP-Adapter gibt dem Empfängersystem folgende Angaben mit:
    • Transport-Protokoll: HTTP 1.0
    • Message-Protokoll: XI-Payload im HTTP-Body
    • Adapter-Engine: Integration Server

Adressierungsart definieren

  1. Wählen Sie die Adressierungsart:
    • URL-Adresse
      • Geben Sie die Zielmaschine, Servicenummer, und Pfadpräfix inklusive Query-String an:

        http://<hostname:port>/<path>?<query-string>

        Die Zielmaschine (HTTP-Port) eines SAP Web Application Server kann über den ICM-Monitor ermittelt werden.

        Weitere Informationen: ICM Monitor

      • Sie können den HTTP-Proxy-Host und HTTP-Proxy-Port angeben.

        Dies ist sinvoll, wenn sich zwischen Plain-HTTP-Adapter und Empfängersystem eine Firewall befindet.

      Authentifizierungsdaten für das Empfängersystem, Weitere Informationen : Transaktion Anzeige und Pflege von RFC-Destinationen (SM59)

    • HTTP-Destination

      Geben Sie die HTTP-Destination an.

    • Geben Sie unter Content Type an, welches Format der Inhalt (die Payload) der Message haben soll.
  2. Geben Sie optionale Header-Felder für das empfängerspezifische Protokoll in der Tabelle an.
  3. Wählen Sie Zusätzliche Query-String-Attribute:
    • Senderpartner
    • Senderservice
    • Empfänger-Interface
    • Message-ID
    • Quality-of-Service

      Weitere Informationen: Quality-of-Service

    • Queue-ID (erforderlich bei Quality-of-Service EOIO)

XI-Payload-Manipulation definieren

  1. Geben Sie unter XML-Kodierung den Zeichensatz der Payload an.
  2. Sollen Sonderzeichen, die als Steuerzeichen interpretiert werden könnten, mit Escape-Zeichen versehen (maskiert) werden, wählen Sie Sonderzeichen maskieren (URL-Escaping).

    Dies dient einer URL-fähigen Präsentation des XML.

  3. Um die Payload für bestimmt Server anzureichern, geben Sie den Vorspann (Prolog) und Nachspann (Epilog) an.

    Einige externe Systeme, beispielsweise Web-Server in Marktplätzen, können Daten nur verarbeiten, wenn sie als HTML-Formular per HTTP verschickt werden.

    Ein typisches HTML-Formular besteht aus benannten Feldern. Bei der Übertragung eines ausgefüllten Formulars an den Server bzw. an ein CGI-Programm müssen die Daten so übertragen werden, dass es dem CGI-Skript möglich ist zu erkennen, aus welchen Feldern das Formular besteht, und welche Daten in welches Feld eingetragen wurden.

    Dies wird hier mit Hilfe eines Vorspanns (Prolog) und eines Nachspanns (Epilog) abgebildet.

    Die Codierungsmethode, die Formularfelder und deren Daten voneinander trennt, benutzt folgende Regeln:

    • Trennen Sie die einzelnen Formularelemente inklusive ihrer Daten durch das Zeichen & voneinander.
    • Trennen Sie Name und Daten eines Formularelements durch ein Gleichheitszeichen (=).
    • Ersetzen Sie Leerzeichen in den eingegebenen Daten (z.B. bei mehreren Wörtern) durch ein Pluszeichen (+).
    • Schreiben Sie alle Zeichen mit den (erweiterten) ASCII-Werten 128 bis 255 (hexadezimal 80 bis FF) durch eine Hexadezimalzeichenfolge um, eingeleitet durch ein Prozentzeichen (%) und gefolgt von dem Hexadezimalwert des Zeichens

      Der deutsche Umlaut ö wird beispielsweise im Zeichensatz ISO-8859-1 durch %F6 umschrieben.

    • Alle Zeichen, die in diesen Regeln als Steuerzeichen vorkommen (also &, +, = und %) werden ebenfalls hexadezimal umschrieben, und zwar genau so wie höherwertige ASCII-Zeichen.

    Weitere Informationen unten unter Beispiel

Adapterspezifische Message-Attribute definieren

  1. Um Adapterspezifische Attribute im Message-Header der XI-Message auszuwerten, wählen Sie Adapterspezifische Message-Attribute verwenden.
  2. Wenn das Fehlen von Message-Attributen zu einer Fehlermeldung führen soll, wählen Sie Fehlerausgabe beim Fehlen adapterspezifischer Message-Attribute.
    • Ist das Kennzeichen gesetzt und in der Message fehlt der Header für adapterspezifische Message-Attribute oder eines der gesetzten Attribute, führt dies zu einem Systemfehler (rote Flagge).
    • Setzen Sie das Kennzeichen nicht, und es fehlen Message-Attribute, dann greift der Adapter auf Informationen aus der Adapterkonfiguration zu.
  3. Wenn Sie eine durch das Mapping gesetzte HTTP-Destination oder URL verwenden wollen, wählen Sie URL oder HTTP-Destination.

    Das Kennzeichen ist von der oben gewählten Adressierungsart abhängig.

    Ist das Kennzeichen gesetzt, wird die dynamisch gesetzte URL oder die HTTP-Destination per HTTP gerufen.

    Ist die URL oder die HTTP-Destination nicht im Message-Header vorhanden, dann wird bei gesetztem Kennzeichen Fehlerausgabe beim Fehlen adapterspezifischer Message-Attribute die XI-Message in den Status Systemfehler gesetzt. Bei nicht gesetztem Kennzeichen wird die statisch im Kommunikationskanal festgelegte URL oder HTTP-Destination verwendet.

    Die technischen Namen der Felder sind:

    • URL: TargetURL
    • HTTP-Destination: HTTPDest
  4. Wollen Sie HTTP-Header-Felder übernehmen, setzen Sie das Kennzeichen und geben Sie in Feld 1 bis Feld 6 die Felder an. Unter diesen hier eingegebenen Bezeichnungen werden die Felder in den HTTP Request eingebettet.

    Die technischen Namen der Felder sind HeaderFieldOne, .... HeaderFieldSix.

  5. Wollen Sie URL-Parameter übernehmen, setzen Sie das Kennzeichen und geben Sie unter Parameter 1 bis Parameter 6 die Parameter an. Unter diesen hier eingegebenen Bezeichnungen werden die Parameter in den HTTP Request übernommen.

    Die technischen Namen der Felder sind URLParamOne, …, URLParamSix.

  6. Wollen Sie HTTP-Header-Felder aus der synchronen Response im XI-Message-Header ablegen, wählen Sie HTTP-Header-Felder (synchrone Response) und geben Sie unter Feld 1 bis Feld 6 die Felder an.

    Die Bezeichnung der Felder muss der Bezeichnung der Felder, die zusätzlich in der HTTP-Response versendet werden sollen, entsprechen.

    Die technischen Namen der Felder sind HeaderFieldOne,...,HeaderFieldSix.

    • Der Attributnamensraum für den Adapter ist: http://sap.com/xi/XI/System/HTTP .
Ergebnis
  • Die oben gemachten Angaben liefern die technischen Informationen für den HTTP-Request.
  • Die Main Payload der Message wird per HTTP-Post an eine HTTP-Adresse gesendet.
  • Der HTTP-Body wird aus der Verknüpfung von Vorspann (Prolog), Message Payload und Nachspann (Epilog) gebildet. Vorspann und Nachspann sind optional und dienen der Anreicherung der Payload bei bestimmten Servern (beispielsweise CGI-Servern). Soll die Payload als HTML-Formular per HTTP-Post gesendet werden, wird sie vor der Verknüpfung URL-escaped.
Beispiel

Aufbau des Vorspanns und Nachspanns: