SOAP-Verbindung
Einführung
Eine SOAP-Verbindung, die mit dem SOAP-Connector erstellt wird, stellt Verbindungen mithilfe des Simple Object Access Protocol (SOAP) her. Nachdem eine Verbindung konfiguriert ist, können Sie Instanzen von SOAP-Aktivitäten erstellen, die dieser Verbindung zugeordnet sind und entweder als Quellen (um Daten in einem Vorgang bereitzustellen) oder als Ziele (um Daten in einem Vorgang zu verarbeiten) verwendet werden.
SOAP-Verbindung erstellen oder bearbeiten
Eine neue SOAP-Verbindung wird mit dem SOAP-Connector von einer dieser Stellen aus erstellt:
- Die Registerkarte Projektendpunkte und Connectors der Designkomponentenpalette (siehe Design-Komponentenpalette).
- Die Seite Globale Endpunkte (siehe Globalen Endpunkt erstellen unter Globale Endpunkte).
Eine vorhandene SOAP-Verbindung kann von diesen Stellen aus bearbeitet werden:
- Die Registerkarte Projektendpunkte und Connectors der Designkomponentenpalette (siehe Design-Komponentenpalette).
- Die Registerkarte Komponenten des Projektbereichs (siehe Menü „Komponentenaktionen" unter Registerkarte „Komponenten" des Projektbereichs).
- Die Seite Globale Endpunkte (siehe Globalen Endpunkt bearbeiten unter Globale Endpunkte).
SOAP-Verbindung konfigurieren
Im Folgenden wird jedes Element der Benutzeroberfläche des SOAP-Verbindungskonfigurationsbildschirms beschrieben.
Hinweis
Einstellungen, die sich auf bereits verwendete Aktivitäten auswirken, können nicht bearbeitet werden. Diese Einstellungen erscheinen in der Benutzeroberfläche deaktiviert.
Tipp
Felder mit einem -Variablensymbol unterstützen die Verwendung von globalen Variablen, Projektvariablen und Jitterbit-Variablen. Beginnen Sie entweder mit der Eingabe einer öffnenden eckigen Klammer [ in das Feld oder klicken Sie auf das -Variablensymbol, um ein Menü mit vorhandenen Variablen anzuzeigen, aus denen Sie wählen können.
-
Verbindungsname: Geben Sie einen Namen ein, um die SOAP-Verbindung zu kennzeichnen. Der Name muss für jede SOAP-Verbindung eindeutig sein und darf keine Schrägstriche (
/) oder Doppelpunkte (:) enthalten. Dieser Name wird auch zur Kennzeichnung des SOAP-Endpunkts verwendet, der sich auf eine bestimmte Verbindung und ihre Aktivitäten bezieht. -
URL hochladen, Datei hochladen oder Vorhandene auswählen: Verwenden Sie die Schaltfläche „Optionsfeld", um die Quelle der hochzuladenden oder wiederzuverwendenden WSDL-Datei auszuwählen. Es können Dateien mit einer Größe von bis zu 5 MB hochgeladen werden.
-
URL hochladen: Geben Sie die URL der WSDL-Datei in das Textfeld ein und klicken Sie dann auf die Schaltfläche Hochladen. Die URL muss ohne Authentifizierung erreichbar sein. Wenn die URL eine Authentifizierung erfordert oder keine gültige WSDL-Datei zurückgibt, zeigt Studio beim Hochladen einen Fehler an (siehe WSDL-Anforderungen zum Hochladen). Wenn Sie eine WSDL mit demselben Namen wie eine vorhandene WSDL hochladen, siehe Hochgeladene WSDL ersetzen weiter unten auf dieser Seite.
-
Datei hochladen: Klicken Sie auf Durchsuchen, um eine WSDL- oder ZIP-Datei auszuwählen. Eine ZIP-Datei kann XSD-Dateien enthalten, von denen die WSDL abhängt. Wenn die ZIP-Datei mehr als eine WSDL-Datei enthält, wählen Sie die Stamm-WSDL aus, wenn Sie dazu aufgefordert werden. Klicken Sie dann auf Hochladen. Wenn beim Hochladen ein Validierungsfehler angezeigt wird, siehe WSDL-Anforderungen zum Hochladen. Zum Hochladen einer WSDL mit demselben Namen wie eine vorhandene, siehe Hochgeladene WSDL ersetzen weiter unten.
Hinweis
Alle
schemaLocation-Angaben müssen auf eine lokale Datei verweisen und eine relative Referenz verwenden. Dies bedeutet normalerweise, dass statt eines Tupels wie diesem:xsi:schemaLocation='http://schemas.xmlsoap.org/wsdl/mime/ http://ws-i.org/profiles/basic/1.1/wsdlmime-2004-08-24.xsd'
-
Dies sollte stattdessen bereitgestellt werden:
xsi:schemaLocation='http://schemas.xmlsoap.org/wsdl/mime/ wsdlmime-2004-08-24.xsd'
Im obigen Beispiel befindet sich die XSD-Datei wsdlmime-2004-08-24.xsd entweder im selben Verzeichnis oder in einem Pfad relativ zur zu ladenden WSDL.
-
Vorhandene auswählen: Wählen Sie aus WSDL-Dateien, die zuvor im aktuellen Projekt verwendet wurden.
-
Port: Wählen Sie den entsprechenden Port aus dem Dropdown-Menü aus.
Hinweis
Beim Bearbeiten einer Verbindung ist dieses Feld deaktiviert, wenn bereits Aktivitäten für den Endpunkt verwendet werden.
-
Web-Service-URL: Geben Sie die URL für den Web-Service ein. Standardmäßig wird dieses Feld mit der URL aus der WSDL ausgefüllt.
-
Service und Binding: Diese Felder werden automatisch basierend auf der WSDL und dem Port ausgefüllt und können nicht bearbeitet werden.
-
Optionale Einstellungen: Klicken Sie hier, um zusätzliche optionale Einstellungen zu erweitern.
-
Inhaltscodierung aktivieren: Bei Auswahl wird der Header Accept-Encoding mit Harmony-unterstützter Codierung (derzeit Gzip) gesendet.
-
Chunked-Transfer-Codierung aktivieren: Bei Auswahl wird der Header Transfer-Encoding: chunked gesendet. Dies ist hilfreich beim Übertragen großer Datenmengen.
-
Expect: 100-continue senden: Bei Auswahl wird der Header Expect: 100-continue gesendet. Dies stellt sicher, dass der HTTP-Server die Header vor dem Senden von Daten validiert. Dies ist hilfreich zum Senden großer Datenmengen ohne Chunked-Transfer-Codierung.
-
Schwache Cipher zulassen: Wählen Sie dies, um mit HTTP-Servern unter Verwendung schwacher Cipher (DES/3DES und RC4) zu kommunizieren.
-
Accept-Encoding auf Gzip setzen: Standardmäßig ausgewählt, dies teilt dem HTTP-Server mit, dass Harmony Gzip-komprimierte Antworten akzeptieren kann. Harmony folgt dem RFC-1952-Standard und dekomprimiert Gzip-HTTP-Antworten automatisch. Wenn der Server kein Gzip verwendet, erkennt Harmony, dass die Antwort nicht komprimiert ist, und behandelt sie normal.
Hinweis
Diese Einstellung steht in keinem Zusammenhang mit dem Gzip-Connector.
-
SSL-Version: Wählen Sie eine spezifische SSL-Version aus, falls dies der HTTP-Server erfordert.
-
Request-Header: Geben Sie HTTP-Header ein, wobei sich jeder Header auf seiner eigenen Zeile befindet, es sei denn, er ist gemäß HTTP-Standards umbrochen. Dieses Feld unterstützt globale Variablen, Projektvariablen und Jitterbit-Variablen mit eckigen Klammern
[ ].
-
-
Benutzername und Passwort: Geben Sie Anmeldeinformationen für den Zugriff auf die WSDL ein, falls erforderlich. Lassen Sie das Feld leer, wenn keine Authentifizierung erforderlich ist.
Standardmäßig verhandelt Harmony mit dem Endpunkt, um zu bestimmen, welche Authentifizierungsmethoden unterstützt werden, und verwendet die bereitgestellten Anmeldeinformationen für eines der Protokolle. Harmony unterstützt diese HTTP-Authentifizierungsoptionen:
- HTTP Basic
- HTTP Digest
- HTTP Digest mit IE-Authentifizierung
-
Zertifikat: Wählen Sie ein Zertifikat zur Authentifizierung beim HTTP-Server aus. Sie können clientseitige SSL-Zertifikate über die Management Console unter Customizations > Client Certificates verwalten.
-
Wiederholung: Diese Einstellung funktioniert nur in Umgebungen mit einer Private Agent Group. Sie versucht Anfragen erneut, wenn ein SOAP-Endpunkt diese Statuscodes zurückgibt:
500,501,502,503oder504.Private Agents müssen Version 10.29 oder höher sein, damit diese Funktion funktioniert. Frühere Agent-Versionen ignorieren diese Einstellung.
Aktivieren Sie das Kontrollkästchen Wiederholung, um zusätzliche Konfigurationsoptionen zu erweitern.
- Wiederholungsintervall (Sekunden): Geben Sie ein, wie lange (maximal 5 Sekunden) zwischen Wiederholungsversuchen gewartet werden soll.
-
Max. Wiederholungsversuche: Geben Sie ein, wie oft (maximal 5) die Anfrage wiederholt werden soll. Falls die Anfrage nach allen Wiederholungsversuchen immer noch fehlschlägt, wird eine Ausnahme im Operationsprotokoll angezeigt. Der private Agent protokolliert auch jeden Wiederholungsversuch in der Datei
jitterbit.log.Alle Wiederholungsversuche zählen als Teil desselben Operationsvorgangs mit einem einzelnen Eintrag im Operationsprotokoll. Beliebige Operationsaktionen für nachgelagerte Operationen werden basierend auf dem endgültigen Status nach allen Wiederholungsversuchen ausgelöst.
Hinweis
Diese Einstellungen setzen die Jitterbit-Variablen
jitterbit.web_service_call.retry_wait_secondsundjitterbit.web_service_call.number_of_retriesaußer Kraft, falls diese Variablen festgelegt sind. -
Methoden auswählen: Wählen Sie beliebige Methoden aus, die Sie als Quellen oder Ziele in Operationen verfügbar machen möchten.
Hinweis
Sie können zuvor ausgewählte Methoden, die bereits von SOAP-Aktivitäten verwendet werden, nicht entfernen.
-
Ausgewählte Aktivität und Anzeigename: Wenn Sie oben Methoden auswählen, werden diese in der folgenden Tabelle hinzugefügt und zeigen jede ausgewählte Methode an, die als Aktivitätsblock unter der SOAP-Verbindung in der Komponentenpalette angezeigt wird. Um einen Anzeigenamen zu bearbeiten, klicken Sie auf das Bearbeitungssymbol und geben Sie einen neuen Namen ein.
Hinweis
Zuvor ausgewählte Aktivitäten, die derzeit als Projektkomponente konfiguriert sind, können nicht entfernt werden.
-
Testen: Klicken Sie, um die Verbindung mit der bereitgestellten Konfiguration zu überprüfen.
-
Speichern: Klicken Sie, um die Verbindungskonfiguration zu speichern und zu schließen.
-
Änderungen verwerfen: Nachdem Sie Änderungen an einer neuen oder vorhandenen Konfiguration vorgenommen haben, klicken Sie, um die Konfiguration ohne Speichern zu schließen. Eine Meldung fordert Sie auf, zu bestätigen, dass Sie die Änderungen verwerfen möchten.
-
Löschen: Nachdem Sie eine vorhandene Verbindungskonfiguration geöffnet haben, klicken Sie, um die Verbindung dauerhaft aus dem Projekt zu löschen und die Konfiguration zu schließen (siehe Komponentenabhängigkeiten, Löschung und Entfernung). Eine Meldung fordert Sie auf, zu bestätigen, dass Sie die Verbindung löschen möchten.
WSDL-Upload-Anforderungen
Studio überprüft eine Datei oder URL beim Upload. Ein Validierungsfehler beim Upload bedeutet, dass die Datei oder URL die folgenden Anforderungen nicht erfüllt:
-
Dateityp: Bei Verwendung von Datei hochladen muss die Datei eine WSDL- oder ZIP-Datei sein. Andere Dateitypen zeigen ein Dialogfeld Nicht unterstützter Dateityp an.
-
URL: Bei Verwendung von URL hochladen muss die URL eine WSDL-Datei zurückgeben und ohne Authentifizierung erreichbar sein. Eine URL, die Authentifizierung erfordert, zeigt einen Fehler an, der mit
Request failed with status codegefolgt vom HTTP-Statuscode beginnt, z. B.401. -
WSDL: Die WSDL muss ein gültiges WSDL-Dokument mit einem
<definitions>-Root-Element sein. Ein XSD-Schema ist keine gültige WSDL. Elemente, auf die die WSDL verweist, wie z. B. Meldungen, müssen in der WSDL definiert sein. Eine WSDL, die nicht analysiert werden kann, zeigt einen Fehler an, der mitFailed to parse WSDLgefolgt vom spezifischen Problem beginnt. -
ZIP-Datei: Eine ZIP-Datei muss mindestens eine WSDL-Datei enthalten und kann XSD-Dateien enthalten, von denen die WSDL abhängig ist. Eine ZIP-Datei ohne gültige WSDL, z. B. eine, die nur XSD-Dateien enthält, zeigt einen Fehler an. Die WSDL kann sich in einem Ordner innerhalb der ZIP-Datei befinden. Wenn die ZIP-Datei mehr als eine WSDL-Datei enthält, zeigt Studio ein Dialogfeld Root-WSDL auswählen an, in dem Sie die Root-Datei auswählen.
-
Importierte XSD-Dateien: XSD-Dateien, die die WSDL importiert, müssen relative Pfade in
schemaLocationverwenden und zusammen mit der WSDL in einer ZIP-Datei am relativen Speicherort hochgeladen werden, denschemaLocationangibt. Wenn eine importierte Datei fehlt, enthält der Fehlerno such file or directoryund endet mit dem Namen der fehlenden Datei. Weitere Informationen finden Sie unter SOAP WSDL: schemaLocation muss relative Verweise verwenden.
WSDL ersetzen
Beim Ersetzen einer WSDL durch das Hochladen einer mit demselben Namen müssen die WSDL-Operationen denselben Namen wie alle derzeit von vorhandenen Aktivitäten verwendeten haben. Wenn sie nicht denselben Namen haben oder wenn verwendete WSDL-Operationen in der Ersatz-WSDL fehlen, weist Sie die folgende Fehlermeldung an, diese Aktivitäten zuerst zu löschen, und listet auf, welche Aktivitäten gelöscht werden müssen:
Dialogtext
WSDL kann nicht hochgeladen werden
Diese WSDL kann nicht ersetzt werden, da WSDL-Operationen fehlen, die von den unten aufgeführten vorhandenen Aktivitäten verwendet werden. Löschen Sie diese Aktivitäten aus der Registerkarte „Komponenten" des Projektbereichs und versuchen Sie es erneut.
-
Aktivitäten, die gelöscht werden müssen
Activity 1 (SOAP-Endpunkt) -
Undefinierte WSDL-Operationen, die von diesen Aktivitäten verwendet werden
Operation 1
Nach dem Löschen wird die folgende Bestätigungsmeldung mit Aktivitäten angezeigt, die möglicherweise durch den Austausch der WSDL beeinträchtigt werden, um angrenzende Transformationen auf potenzielle Zuordnungsfehler zu überprüfen. Nach Bestätigung der Nachricht wird die WSDL an allen Stellen ersetzt, an denen sie im gesamten Projekt verwendet wird:
Dialogtext
Datei überschreiben?
Diese WSDL verfügt über WSDL-Operationen, die diejenigen ersetzen, die von den unten aufgeführten vorhandenen Aktivitäten verwendet werden. Da Transformationen Schemas von Aktivitäten erben können, überprüfen Sie angrenzende Transformationen auf Zuordnungsfehler.
-
Aktivitäten, die möglicherweise beeinträchtigt sind
Activity 1 -
Definierte WSDL-Operationen, die von diesen Aktivitäten verwendet werden
Operation 1
Fehlerbehebung
Die Bereitstellung eines Projekts mit einer SOAP-Verbindung kann mit einem Fehler fehlschlagen, der diesem ähnelt:
Fehlertext
Bereitstellung fehlgeschlagen - Interner Fehler: Keine WSDL mit Locator „0a12b345-6c7d-8e9f-0ghi-1jkl23m4567n.wsdl" wurde zu diesem Projekt hinzugefügt. Aktualisieren Sie auf Studio 8.4.0 oder höher und stellen Sie das Projekt erneut bereit. Versuchen Sie den Vorgang erneut. Wenn das Problem weiterhin besteht, kontaktieren Sie den Jitterbit-Support.
Dies bedeutet, dass das Projekt eine WSDL referenziert, die nicht mehr verfügbar ist, und das erneute Hochladen der WSDL behebt das Problem. Vor dem Release Harmony 12.9 konnte die Bereitstellung eines Projekts auch WSDL-Dateien löschen, die noch verwendet wurden, was sich meist nach dem Transfer des Projekts in eine andere Umgebung zeigte. Das Release 12.9 verhindert diesen Löschvorgang, aber eine WSDL, die zuvor gelöscht wurde, muss noch erneut hochgeladen werden.
Der gleiche Fehler kann auch bei API-Aktivitäten SOAP Request und SOAP Response auftreten, die eine WSDL in der Aktivität statt in einer Verbindung hochladen.
Wenn Sie mehrere WSDLs hochgeladen haben, können Sie wie folgt herausfinden, welche das Problem aufweist:
-
Exportieren Sie das Projekt als JSON-Datei.
-
Öffnen Sie die JSON-Datei in einem Text-Editor.
-
Suchen Sie nach dem Locator ohne das
.wsdl-Suffix. Zum Beispiel:0a12b345-6c7d-8e9f-0ghi-1jkl23m4567n -
Das Ergebnis wird in einem Objekt mit dem Schlüssel
wsdlDocumentIdangezeigt:"wsdlDocumentId": "0a12b345-6c7d-8e9f-0ghi-1jkl23m4567n" -
Suchen Sie in der Nähe nach Endpunkt-Identifizierungsinformationen in einem
endpoint-configuration-Block oder in Feldern wielabel,name,portNameusw. Möglicherweise sehen Sie auch Operationsnamen, die der WSDL zugeordnet sind (importAccount,importInventoryusw.), um zu bestätigen, um welchen Endpunkt es sich handelt.Vorsicht
Das Feld
duplicateRefkann in Exporten als Duplikat-Herkunftsfeld (keine WSDL-Kennung) angezeigt werden und kann auf unabhängige Komponenten (Skripte/Transformationen) verweisen.
So laden Sie die WSDL erneut hoch:
-
Öffnen Sie den SOAP-Endpunkt-Konfigurationsbildschirm.
-
Importieren Sie die WSDL über die Optionen URL hochladen oder Datei hochladen erneut. Wählen Sie nicht Vorhandene auswählen aus. Wenn beim Upload ein Validierungsfehler angezeigt wird, siehe WSDL-Upload-Anforderungen.
-
Überprüfen Sie die Konfiguration des SOAP-Endpunkts. Möglicherweise müssen Sie den SOAP-Port und die Methoden erneut auswählen. Klicken Sie dann auf Speichern.
-
Überprüfen Sie die Konfiguration aller SOAP-Aktivitäten, die den SOAP-Endpunkt verwenden, um ihre Schemas zu regenerieren.
-
Aktualisieren Sie die Konfiguration aller nachgelagerten Transformationen für Zuordnungsänderungen.
Wir empfehlen, die WSDL mit dem Fehler zu löschen, nachdem alle abhängigen Aktivitäten entfernt wurden.
Nächste Schritte
Menüaktionen für eine Verbindung und deren Aktivitätstypen sind über den Projektbereich und die Designkomponentenpalette zugänglich. Weitere Informationen finden Sie unter Aktionsmenüs in Connector-Grundlagen.
Nach dem Konfigurieren einer SOAP-Verbindung können Sie eine oder mehrere SOAP-Aktivitäten konfigurieren, die dieser Verbindung zugeordnet sind. Diese können als Quelle zum Bereitstellen von Daten für einen Vorgang oder als Ziel zum Verarbeiten von Daten in einem Vorgang verwendet werden. Alternativ können Sie die SOAP-Verbindung in einem Skript verwenden.
Weitere Informationen finden Sie unter SOAP-Aktivitäten.