- Dieses Thema hat 4 Antworten sowie 3 Teilnehmer und wurde zuletzt vor vor 4 Jahren von
Markus Franke aktualisiert.
- Beitrag
-
- 22. November 2020 um 20:28 Uhr
Hallo,wenn ich den http Adapter synchron nutzen will um ggf. individuelle http-Payload Antworten zu erstellen, finde ich nur die Möglichkeit eines folgenden Antwortaufbaus (hier in JSON):
{"tc:RESPONSE": { "tc:processSync_Resp": { "tc:message": { "type": "EventSync", "creator": "EventSyncCreator", "created": "2020-11-22+010020:21:38", "content": { "ROOT": { "Blub": "blablabla" }}}}}} Dabei wird der individuelle Teil "content" samt der "tc:RESPONSE" ausgegeben. Frage: Könnte man evtl nur den tag "content" inkl. Unterbaum als Payload definieren?
-
Dieses Thema wurde vor 4 Jahren, 7 Monaten von
vikl geändert.
Hochgeladene Dateien sind nur für angemeldete und verifizierte Nutzer sichtbar.
00
- Antworten
-
- 23. November 2020 um 8:21 Uhr
Hat sich wohl erledigt:Im Ausgangsmapping per XPath auf „\\content“ suchen/filtern
Hochgeladene Dateien sind nur für angemeldete und verifizierte Nutzer sichtbar.
00- 23. November 2020 um 8:34 Uhr
Seit TRANSCONENCT 2.3.4 gibt es noch eine andere Möglichkeit. Erstellen Sie einen HTTP-Eingangsadapter vom Verbindungstyp „JSON“. Lassen Sie das Feld „Erfolgsantwort“ leer und stellen Sie die Einstellung „Verarbeitung“ auf den Wert „Synchron“.Im dazu konfigurierten Prozess können Sie mit einer Transformation die JSON-Antwort erzeugen.
<?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="text" encoding="UTF-8" omit-xml-declaration="yes" /> <xsl:template match="/">{ "Blub": "blablabla" } </xsl:template> </xsl:stylesheet>
Im Ende-Ereignis des Prozesses wählen Sie dann das Ergebnis der Transformation als Ergebnis aus.
Ihr TRANSCONNECT-Team
Hochgeladene Dateien sind nur für angemeldete und verifizierte Nutzer sichtbar.
00- 19. Mai 2021 um 10:13 Uhr
Ich habe nun versucht den neuen Mechanismus der Version 2.3.4 anzuwenden und wollte in der Transformation für die Ende/Ergebnis Nachricht die http-Header wie folgt setzen:<xsl:param name=“HTTPStatusCode“ />
<xsl:param name=“HTTPHeaderFields“ />
<xsl:template match=“/“>
<xsl:value-of
select=“java:put( $HTTPHeaderFields, ‚Content-Disposition‘,’attachment;filename=123.pdf‘ )“ />
<xsl:value-of
select=“java:put( $HTTPHeaderFields, ‚Content-Type‘, ‚application/pdf‘ )“ />Dieses führt bei der Ausführung jedoch zum Fehler:
com.sqlgmbh.tc.processing.ProcessException: error transforming message: error transforming message: terminated due to an error: java.lang.NoSuchMethodException: For extension function, could not find method java.lang.String.put([ExpressionContext,] #STRING, #STRING).: For extension function, could not find method java.lang.String.put([ExpressionContext,] #STRING, #STRING).Hochgeladene Dateien sind nur für angemeldete und verifizierte Nutzer sichtbar.
00- 15. Juni 2021 um 12:33 Uhr
Der von ihnen verwendete Mechanismus zum Überschreiben der HTTP Response Header Felder funktioniert nur für den Verbindungstyp „Default“ und muss in der Transformation die beim Ausgangsmapping des Adapters angegeben wird spezifiert werden.Für den bei ihnen verwendeten Verbindungstyp „JSON“ ist der HTTP Response Code immer auf 200 und der Content-Type auf „application/json“ festgesetzt.
Das Überschreiben dieser Felder in der Transformation im Prozess für die Ende/Ergebnis Nachricht ist damit aktuell nicht möglich.
Hochgeladene Dateien sind nur für angemeldete und verifizierte Nutzer sichtbar.
00
- Du musst angemeldet sein, um auf dieses Thema antworten zu können.