Fehlerbehebung beim Betrieb im Jitterbit Integration Studio
Einführung
Wenn beim Ausführen einer Operation Probleme auftreten, werden die folgenden Maßnahmen zur Fehlerbehebung empfohlen.
Testen der Verbindung
Für alle Vorgänge mit Konnektoren Klicken Sie in der Verbindung auf die Schaltfläche Test, um sicherzustellen, dass die Verbindung erfolgreich ist.
Für Connector SDK-basierte Konnektoren, die in Vorgängen bereitgestellt werden, die auf privaten Agenten ausgeführt werden, stellt das Klicken auf die Schaltfläche Test sicher, dass die neueste Version des Konnektors auf den Agenten heruntergeladen wird (es sei denn, Sie verwenden die Organisationsrichtlinie Automatische Konnektoraktualisierung deaktivieren).
Überprüfen Sie die Operation
Überprüfen Sie die Operation für alle Informationen, die während der Ausführung der Operation geschrieben werden.
Je nach Agententyp können Sie Folgendes tun, um zusätzliche Protokolldateien und Daten abzurufen:
- Aktivieren Sie die debuggen Protokollierung für Operation (für Cloud-Agenten oder für private Vertreter)
- Aktivieren Sie Connector-Ausführliche Protokollierung (nur private Agenten)
- Überprüfen Sie die Agentenprotokolle (nur private Vertreter)
Mögliche Fehler in Operation
In den folgenden Abschnitten werden Fehler behandelt, die in einem Operation vorhanden sein können, sowie deren Lösung.
Warnung zu zusätzlichen Unterelementen
Ein extra subelement
Warnungen in den Protokollmeldungen können im Allgemeinen ignoriert werden. Diese Warnung weist darauf hin, dass die API Payload eines Connectors mehr Knoten oder Felder zurückgegeben hat von Daten als die im Schema definierten.
Unzulässige Zeichen in XML Schema
Abhängig von der Connector-Aktivität sind diese Zeichen ungültig und führen zu einem Laufzeit:
\x00 (NULL) | \x0E (herausschalten) |
\x01 (Beginn der Überschrift) | \x0F (einrücken) |
\x02 (Textanfang) | \x1A (Ersatzzeichen) |
\x03 (Ende des Textes) | \x1B (Flucht) |
\x04 (Ende der Übertragung) | \x1C (Dateitrennzeichen, Informationstrennzeichen vier) |
\x05 (Anfrage) | \x1D (Dateitrennzeichen, Informationstrennzeichen drei) |
\x06 (bestätigen) | \x1E (Dateitrennzeichen, Informationstrennzeichen zwei) |
\x07 (Glocke) | \x1F (Dateitrennzeichen, Informationstrennzeichen eins) |
\x08 (Rücktaste) | \xD800 Zu \xDFFF (UTF-16-Ersatzzeichen mit hohem Stellenwert) |
\x0B (vertikale Tab) | \xFFFE |
\x0C (Seitenvorschub) | \xFFFF |
Wenn die Eingabe- oder Ausgabedaten, die an eine Transformation neben einer XML-basierten Konnektoraktivität übermittelt oder von dieser zurückgegeben werden, eines der oben genannten Zeichen enthalten, wird zur Laufzeit ein spezifischer Fehler zurückgegeben, der auf dieses Zeichen verweist. Wenn beispielsweise \x1E
Steuerzeichen ist in der Transformation für die Epicor Kinetic Get BAQ-Aktivität vorhanden, wird dieser Fehler zur Laufzeit zurückgegeben:
The Exception is Invalid white space character (0x1e) in text to output
Nicht unterstützte XML-Elemente beim Einbetten in JSON {: #unsupported-xml-elements-when-embedded-in-json }Charakterdatenabschnitte (CDATA) werden nicht mit in JSON eingebettetem XML unterstützt, das über eine Transformation gesendet werden soll. Das Einfügen von CDATA-Abschnitten kann dazu führen, dass der folgende Fehler in einem Operation zur Laufzeit:
Transformation failed. Error: The operation "Operation" failed.
Error: Failed to convert XML file to JSON.
org.jitterbit.integration.server.engine.EngineSessionException: org.xml.sax.SAXParseException ...
Um dies zu umgehen, verwenden Sie ein Jitterbit Script Zu Replace
Die &
, <
, >
, '
, Und "
Zeichen des gesamten CDATA-Abschnitts, einschließlich seiner Definition (<![CDATA[ ... ]]>
), mit &
, <
, >
, &apos
, "
Bei Bedarf kann der gesamte XML-String, der den CDATA-Abschnitt enthält, ersetzt werden, wenn die Ausrichtung des Abschnitts für Ihren Anwendungsfall nicht geeignet ist.
Das folgende Beispiel ist ohne Ersetzungen ungültig:
{
"name": "Jitterbit",
"data": "<xml><content><![CDATA[<greeting>Hello, world!</greeting>]]></content></xml>"
}
Neuverarbeitung gespiegelter XML-Schemas
Aufgrund von Änderungen in den Harmony-Versionen 10.25 und 10.27, kann es bei Projekten, die vor diesen Versionen erstellt wurden, zu einem abweichenden Verhalten kommen. Diese Änderungen betreffen XML-Schemas, die gespiegelt und wirken sich höchstwahrscheinlich auf Zuordnungen aus, die XML-Funktionen verwenden, die Namespaces beinhalten, wie zum Beispiel SelectNodes
Funktion. In diesem Fall sind zuvor gültige Zuordnungen nun möglicherweise ungültig und weisen einen Fehler in der Syntax der XML-Funktion auf.
Vergleichen Sie die Unterschiede zwischen diesem Beispiel eines gespiegelten XML- Schema vor 10.25 und einem in 10.25 oder höher erstellten Schema:
- Beispiel für ein XML-Schema vor 10.25: In Projekten, die vor 10.25 erstellt wurden, verwenden gespiegelte XML-Schemas das Standard-Namespace-Präfix für XML-Dokumente:
xsi
. Wie oben rot hervorgehoben,xmlns:xsi
deklariert den Namespace und nicht zugeordnete Felder werden im Schema mit dem Attributxsi:nil="true"
. - Beispiel-XML-Schema in 10.25 und höher: In Projekten, die in 10.25 und höher erstellt und oben grün hervorgehoben wurden, verwenden gespiegelte XML-Schemas das Namespace-Präfix
ns
um einen qualifizierten Namespace zu deklarieren. Nicht zugeordnete Felder werden im Schema nicht angezeigt.
Wenn Sie in den Versionen 10.25 und 10.26 importiert ein Projekt mit einem gespiegelten XML- Schema, das vor 10.25 erstellt wurde, wurde das Schema erneut verarbeitet und so geändert, dass das qualifizierte Namespace-Präfix verwendet wird.
Ab Version 10.27 behalten importierte Projekte, deren gespiegelte XML-Schemas vor 10.25 erstellt wurden, das Standardpräfix des XML- Schema-Namespaces bei, sodass das Schema mit dem bei seiner Erstellung identisch ist. Diese Änderung bedeutet, dass alle Projekte vor 10.25, die in die aktuelle Version importiert werden, wie ursprünglich vorgesehen funktionieren sollten.
Um eine Aktualisierung eines XML Schema vor 10.25 zu erzwingen, um das aktualisierte Namespace-Präfix zu verwenden, können Sie das Schema neu generieren, indem Sie es aktualisieren oder die Aktivität neu konfigurieren, die das Schema bereitstellt.