Hinzufügen eines externen Webservices

Externe Webservices sind Daten verarbeitende Dienste, die von einem Drittanbieter über das Internet angeboten werden. Sie können einen externen Webservice als Schritt eines Flusses verwenden und so die Funktionen Ihres Spectrum Technology Platform-Servers erweitern.

Die Prozedur definiert eine Verbindung zwischen Ihrem Spectrum Technology Platform-Server und einem Webservice eines Drittanbieters. Nach Abschluss dieser Prozedur verfügen Sie im Enterprise Designer über einen neuen Schritt, der den externen Webservice repräsentiert. Sie können den externen Webservice wie jeden anderen Schritt in einem Fluss verwenden.

  1. Öffnen Sie die Management Console.
  2. Öffnen Sie Ressourcen > Externe Webdienste.
  3. Klicken Sie auf die Schaltfläche „Hinzufügen“ .
  4. Im Schritt Deskriptor:
    1. Geben Sie die WSDL oder WADL des Webservices über eine der folgenden Methoden ein:
      Laden des Deskriptors des Webservices über eine URL Wählen Sie im Feld Deskriptor laden Über URL aus und geben Sie im Feld URL die URL der WADL oder WSDL an. Geben Sie die Anmeldeinformationen für den Webservice ein, wenn der Webservice dies erfordert.
      Laden des Deskriptors des Webservices über eine Datei Wählen Sie im Feld Deskriptor laden Hochladen aus und wählen Sie dann die Datei im Feld Datei hochladen aus. Einige Anbieter von Webservices ziehen es vor, die WSDL oder WADL als Datei zur Verfügung zu stellen, anstatt sie über eine URL verfügbar zu machen.
      Bei REST-Webservices, die keine WADL haben Wählen Sie im Feld Deskriptor laden Keinen aus.
    2. Klicken Sie auf Weiter.
  5. Im Schritt Einstellungen:
    1. Geben Sie im Feld Name den Namen ein, über den Sie den externen Webdienst in Spectrum Technology Platform verfügbar machen möchten. Dies ist der Schrittname, der im Enterprise Designer angezeigt wird. Sie können einen beliebigen Namen angeben, doch darf dieser nicht bereits von einem anderen Webservice in Ihrem System verwendet werden.
    2. Geben Sie im Feld Timeout die Anzahl an Sekunden ein, die verstreichen dürfen, bevor eine an den Webdienst gesendete Anforderung einem Timeout unterliegt.
      Anmerkung: Der Timeout-Wert, den Sie hier angeben, gilt für alle an den Webservice gesendeten Anforderungen. Dies schließt nicht nur Transaktionen mit dem verfügbar gemachten Webservice ein, sondern auch Anforderungen im Rahmen der Konfiguration des Webservices. Solche Konfigurationsanforderungen werden durch die Auswahl eines neuen Elements auf der Seite Anforderung und beim Ausführen einer Vorschau aufgerufen. Bei jeder dieser Aktionen können Timeouts auftreten. Wenn Timeouts auftreten, kann ein Erhöhen des Wertes Timeout dabei helfen, diese zu vermeiden, vorausgesetzt der Webdienst läuft tatsächlich.
    3. Wenn der externe Webdienst einen Benutzernamen und ein Kennwort erfordert, wählen Sie unter Sicherheitseinstellungen im Feld Typ aus, wie Benutzername und Kennwort vom Spectrum Technology Platform-Server an den externen Webdienst übertragen werden sollen.
      Keine
      Wählen Sie diese Option aus, wenn Sie keinen Benutzernamen und kein Kennwort zur Verwendung des externen Webservices angeben müssen.
      Standardauthentifizierung
      Wählen Sie diese Option aus, um Benutzernamen und Kennwort im HTTP-Header an den externen Webservice zu übergeben.
      Webservice-Sicherheit
      Nur bei SOAP-Diensten: Wählen Sie diese Option aus, um Benutzernamen und Kennwort im Header der SOAP-Nachricht an den externen Webservice zu übergeben.
    4. Geben Sie einen Benutzernamen und ein Kennwort ein, wenn sie für den Zugriff auf den externen Webservice erforderlich sind.
    5. Klicken Sie auf Weiter.
  6. Konfigurieren Sie im Schritt Anforderung die Parameter, die in die Anforderung an den externen Webservice eingeschlossen werden sollen.

    Für REST-Webservices:

    URL
    Wenn Sie im Schritt Deskriptor keine WADL angegeben haben, geben Sie eine Anforderungs-URL, die die Pfadparameter (falls vorhanden) und Abfrageparameter enthält, die Sie in die Anforderung einschließen möchten, als Beispiel ein. Beispiel:

    http://beispiel.com/rest/kunden/{land}?alter=31

    In diesem Beispiel ist ein Pfadparameter, {land}, und ein Abfrageparameter, alter, enthalten.

    Wenn Sie im Schritt Deskriptor eine WADL angegeben haben, wird im Feld URL der Endpunkt basierend auf der von Ihnen angegebenen WADL angezeigt. Sie können den Endpunkt nicht bearbeiten.

    Resource
    Diese Einstellung ist nur sichtbar, wenn Sie im Schritt Deskriptor eine WADL angegeben haben. Wählen Sie die Webservice-Ressource aus, die Sie in Spectrum Technology Platform verfügbar machen möchten.
    Anmerkung: Wenn Sie mehr als eine Ressource verfügbar machen möchten, müssen Sie für jede Ressource einen separaten externen Webservice definieren.
    Methode
    Wählen Sie die HTTP-Methode aus, die für die Anforderung an den externen Webservice verwendet werden soll.

    Wenn Sie im Schritt Deskriptor eine WADL angegeben haben, werden nur die HTTP-Methoden aufgelistet, die vom externen Webdienst unterstützt werden.

    Pfadparameter
    Im Abschnitt Pfadparameter sind die Parameter aufgelistet, die Teil des URL-Pfads sind, wenn der externe Webdienst Pfadparameter verwendet. Diese URL enthält beispielsweise den Pfadparameter {land}:

    http://beispiel.com/rest/kunden/{land}?alter=31

    Wenn Sie im Schritt Deskriptor eine WADL angegeben haben, werden die Pfadparameter des Webdienstes aufgelistet. Wenn Sie im Schritt Deskriptor keine WADL angegeben haben, wird die Liste der Pfadparameter aus dem Anforderungs-URL-Beispiel generiert, das Sie im Feld URL angegeben haben. Um einen Pfadparameter hinzuzufügen oder zu entfernen, fügen Sie ihn der URL hinzu oder entfernen Sie ihn aus ihr. Alles in der URL, was in geschweifte Klammern eingeschlossen ist, wird als Pfadparameter interpretiert.

    Abfrageparameter
    Im Abschnitt Abfrageparameter sind die Parameter aufgelistet, die in der Anforderungs-URL nach dem „?“ stehen. Diese URL enthält beispielsweise den Abfrageparameter alter:

    http://beispiel.com/rest/kunden/{land}?alter=31

    Wenn Sie im Schritt Deskriptor eine WADL angegeben haben, werden die Abfrageparameter des Webdienstes aufgelistet. Wenn Sie im Schritt Deskriptor keine WADL angegeben haben, wird die Liste der Abfrageparameter aus dem Anforderungs-URL-Beispiel generiert, das Sie im Feld URL angegeben haben. Um einen Abfrageparameter hinzuzufügen oder zu entfernen, fügen Sie ihn der URL hinzu oder entfernen Sie ihn aus ihr.

    Tabelle 1. Einstellungen für REST-Pfadparameter und -Abfrageparameter
    Einstellung Beschreibung
    Verfügbar machen Aktivieren Sie das Kästchen in dieser Spalte, um den Parameter im Spectrum Technology Platform-Schritt verfügbar zu machen.
    Anforderung In dieser Spalte ist der Parametername enthalten, der in der Anforderung an den externen Webservice verwendet wird.
    Eingabe In dieser Spalte sind die Eingabefeldnamen aufgelistet, wie sie in einem Fluss erscheinen. Sie können die Namen beibehalten, wie sie vom Webservice des Drittanbieters verwendet werden, oder sie ändern, indem Sie den Mauszeiger über den Namen bewegen und dann auf die Schaltfläche „Bearbeiten“  klicken.
    Standardwert Aktivieren Sie das Kästchen in dieser Spalte, wenn Sie für das Feld einen Standardwert angeben möchten. Geben Sie den Standardwert in das Feld ein, das nach Aktivieren des Kästchens erscheint.

    Wenn Sie einen Standardwert angeben möchten, den ein Fluss nicht überschreiben können soll, aktivieren Sie das Kästchen in der Spalte Standardwert und deaktivieren Sie das entsprechende Kästchen in der Spalte Anforderung. Dies blendet das Feld für Flüsse aus und versieht die Anforderung an den externen Webservice mit dem Standardwert. Dies kann nützlich sein, wenn Sie einen Zugriffsschlüssel haben, den Sie in jeder Anforderung angeben müssen. Beispiel:



    Für SOAP-Webservices:

    URL
    In diesem Feld wird der Endpunkt angezeigt, basierend auf der WSDL, die Sie im Schritt Deskriptor angegeben haben. Sie können dieses Feld nicht bearbeiten.
    Bedienung
    Wählen Sie den Webservice-Vorgang aus, den Sie ausführen möchten.
    Anmerkung: Wenn Sie mehr als einen Vorgang verfügbar machen möchten, müssen Sie für jeden Vorgang einen separaten externen Webservice definieren.
    Anforderung
    Wählen Sie in dieser Spalte die Felder und Optionen aus, die Sie über Spectrum Technology Platform verfügbar machen möchten.
    Eingabe
    In dieser Spalte sind die Eingabefeldnamen aufgelistet, wie sie in einem Fluss erscheinen. Sie können die Namen beibehalten, wie sie vom Webservice des Drittanbieters verwendet werden, oder sie ändern, indem Sie den Mauszeiger über den Namen bewegen und dann auf die Schaltfläche „Bearbeiten“  klicken.
    Standardwert
    Aktivieren Sie das Kästchen in dieser Spalte, wenn Sie für das Feld einen Standardwert angeben möchten. Geben Sie den Standardwert in das Feld ein, das nach Aktivieren des Kästchens erscheint.

    Wenn Sie einen Standardwert angeben möchten, den ein Fluss nicht überschreiben können soll, aktivieren Sie das Kästchen in der Spalte Standardwert und deaktivieren Sie das entsprechende Kästchen in der Spalte Anforderung. Dies blendet das Feld für Flüsse aus und versieht die Anforderung an den externen Webservice mit dem Standardwert. Dies kann nützlich sein, wenn Sie einen Zugriffsschlüssel haben, den Sie in jeder Anforderung angeben müssen. Beispiel:



  7. Wenn Sie im Feld Methode POST oder PUT ausgewählt haben, definieren Sie die Struktur der Daten, die Sie im POST- oder PUT-Vorgang an den Webdienst senden möchten. Klicken Sie dazu auf die Schaltfläche Format und wählen Sie eine der folgenden Optionen aus:
    Schema hochladen
    Wählen Sie diese Option aus, wenn Sie über ein XML-Schema verfügen, das die Struktur der Daten, die Sie im POST- oder PUT-Vorgang an den Webservice senden möchten, definiert. Nachdem Sie diese Option ausgewählt haben, öffnen Sie die Schemadatei.
    Beispiel bereitstellen
    Wählen Sie diese Option aus, wenn Sie über ein Beispiel für die Daten verfügen, die Sie im POST- oder PUT-Vorgang an den Webservice senden möchten. Nachdem Sie diese Option ausgewählt haben, können Sie das Beispiel von Hand eingeben oder in das Fenster einfügen.

    Nachdem Sie ein Schema oder ein Beispiel angegeben haben, aktivieren Sie das Kästchen neben jedem Datenelement, das Sie im Flussschritt verfügbar machen möchten.

  8. Klicken Sie auf Weiter.
  9. Im Schritt Header:
    1. Geben Sie unter HTTP Header für jeden Header den Wert an, der an den externen Webdienst übergeben werden soll. Die Werte, die Sie hier angeben, werden für alle Anforderungen von Spectrum Technology Platform an den externen Webservice verwendet. Wenn keine Header aufgelistet sind, erfordert der externe Webservice keine HTTP-Header.
    2. Bei SOAP-Webdiensten: Wenn der externe Webdienst SOAP-Header unterstützt, können Sie die Header, die Sie verwenden möchten, unter SOAP-Header auswählen. Sie können für jeden SOAP-Header einen Standardwert festlegen. Der Standardwert kann in jeder Anforderung an Spectrum Technology Platform überschrieben werden. In der Spalte Eingabe wird der Name des Headers angezeigt, der in Anforderungen an Spectrum Technology Platform verwendet wird. Wenn Sie einen anderen Namen verwenden möchten, bewegen Sie den Mauszeiger über den Namen und klicken Sie auf die Schaltfläche „Bearbeiten“ .

      Wenn ein Kästchen aktiviert und ausgegraut dargestellt wird, bedeutet dies, dass der Header erforderlich ist und Sie ihn nicht deaktivieren können.

    3. Klicken Sie auf Weiter.
  10. Im Schritt Antwort:
    1. Wenn Sie möchten, dass die Antwort vom externen Webdienst in einem einzelnen Feld zurückgegeben wird, aktivieren Sie das Kästchen Nutzlast als Feld zurückgeben. Alle Antwortelemente werden in einem einzelnen Feld platziert, statt in eigenen Feldern zurückgegeben zu werden. Bei REST-Webservices ist der Feldname „RestReponse“, und bei SOAP-Webservices ist der Feldname „SoapResponse“.
    2. Wenn Sie einen REST-Webdienst konfigurieren, ist eine Schaltfläche Format vorhanden. Klicken Sie auf diese Schaltfläche, um auszuwählen, wie Sie die Struktur der von Spectrum Technology Platform zurückgegebenen Webservice-Antwort definieren möchten:
      Schema hochladen
      Wählen Sie diese Option aus, wenn Sie über ein XML-Schema verfügen, das die Struktur der Antwort, die von Spectrum Technology Platform zurückgegeben werden soll, definiert. Nachdem Sie diese Option ausgewählt haben, öffnen Sie die Schemadatei.
      Beispiel bereitstellen
      Wählen Sie diese Option aus, wenn Sie über eine Beispielantwort vom externen Webservice verfügen und diese verwenden möchten, um die Antwort, die von Spectrum Technology Platform zurückgegeben werden soll, zu definieren. Nachdem Sie diese Option ausgewählt haben, können Sie das Beispiel von Hand eingeben oder in das Fenster einfügen.
    3. Wählen Sie in der Spalte Antwort die Felder aus, die Sie in Spectrum Technology Platform verfügbar machen möchten.

      Das Symbol  zeigt an, dass ein Feld als Listenfeld zurückgegeben wird. Eine Liste ist ein Datentyp von Spectrum Technology Platform, der hierarchische Daten enthält, die sich wiederholen können. Ein Feld „PhoneNumbers“ könnte beispielsweise mehrere Felder „Phone“ enthalten:

      <PhoneNumbers>
         <Phone>
      	<Type>Cell</Type>
      	<Number>312-123-4567</Number>
         </Phone>
         <Phone>
      	<Type>Home</Type>
      	<Number>773-123-4567</Number>
         </Phone>
      </PhoneNumbers>

      In diesem Fall wäre das Feld „PhoneNumbers“ ein Listenfeld, das eine Liste von Elementen „Phone“ enthalten kann.

    4. In der Spalte Ausgabe sind die Ausgabefeldnamen aufgelistet, wie sie in einem Fluss erscheinen. Sie können die Namen beibehalten, wie sie vom Webservice des Drittanbieters verwendet werden, oder sie ändern, indem Sie den Mauszeiger über den Namen bewegen und dann auf die Schaltfläche „Bearbeiten“  klicken.
    5. Klicken Sie auf Weiter.
  11. Im Schritt Vorschau können Sie den externen Webdienst testen, indem Sie Beispieldaten eingeben und dann auf Vorschau ausführen klicken. Dies ist optional.

    Im Folgenden finden Sie einige Tipps zur Eingabe von Beispieldaten:

    • Sie müssen nicht in jedes Feld Daten eingeben. Wenn Sie ein Feld leer lassen, wird in der Vorschau eine leere Zeichenfolge verwendet.
    • Wenn Sie ausprobieren möchten, was passiert, wenn in einem Feld der Standardwert oder ein NULL-Wert übergeben wird, klicken Sie auf das Symbol neben dem Feld:

      Wenn Sie auf der Registerkarte Anforderung für das Feld einen Standardwert definiert haben, wird der Standardwert verwendet. Wenn Sie keinen Standardwert definiert haben, wird ein NULL-Wert verwendet.
    • Sie können eine Vorschau für mehrere Datensätze gleichzeitig anzeigen lassen. Um einen Datensatz hinzuzufügen, klicken Sie auf die Schaltfläche „Hinzufügen“ .
    • Sie können Testdaten aus einer Datei importieren. Um Daten zu importieren, klicken Sie auf die Schaltfläche „I^mportieren“ . Beachten Sie Folgendes:
      • Die erste Zeile der Datei muss ein Header-Datensatz sein. Die Feldnamen im Header müssen mit den Feldnamen übereinstimmen, die der Dienst erfordert.
      • Es können maximal fünf Datensätze importiert werden.
      • Wenn in der Datei Leerzeichen als Feldtrennzeichen verwendet werden, müssen die Feldwerte in Anführungszeichen stehen. Im Folgenden finden Sie ein Beispiel einer Datei, in der ein Leerzeichen als Feldtrennzeichen verwendet wird:
        AddressLine1 AddressLine2 City StateProvince PostalCode
        "One Global View" "" "Troy" "NY" "12180"
        "3001 Summer St" "" "Stamford" "CT" "06926"
        "224 N Michigan Ave" "Suite 300" "Chicago" "IL" ""
    • Um alle Datensätze zu löschen, klicken Sie auf die Schaltfläche „Löschen“ im oberen Bereich der Vorschau:

    • Um einen einzelnen Datensatz zu löschen, bewegen Sie den Mauszeiger über den Namen des Eingabedatensatzes (beispielsweise „Input Record 1“) und klicken Sie auf die Schaltfläche „Löschen“ neben dem Datensatznamen:

  12. Um den externen Webdienst zur Verwendung in Flüssen verfügbar zu machen, stellen Sie den Schalter Aktiviert auf An.
  13. Klicken Sie auf Speichern.

Der externe Webservice ist jetzt definiert und zur Verwendung als Schritt in einem Fluss im Enterprise Designer verfügbar.