2016-07-25 9 views
1

Ich versuche BizTalk-App zu erstellen, die REST-Dienste verfügbar machen und JSON-Nachrichten anstelle von SOAP-XML akzeptieren kann.REST-Dienst mit Biztalk aussetzen

Was ich getan habe ist: Ich habe einige Schemata und Orchestrierungen erstellt und die Schemata als WCF-Dienst veröffentlicht. Dann habe ich auch benutzerdefinierte Piplines erstellt, um json zu xml zu dekodieren. Dies scheint jedoch nur mit XML-Anforderungen mit Content-Type:application/soap+xml; charset=utf-8 Header funktionieren.

Wenn eine Änderung des Inhaltstyp auf Content-Type: application/json es mit

nicht

Kann die Nachricht nicht verarbeiten, da der Content-Typ 'application/json' nicht die erwartete Typ ‚war application/soap + xml; charset = utf-8 '.

Suchen Sie im ganzen Netz nach der Lösung. Und jetzt bin ich nicht sicher, ob es überhaupt erreicht werden kann, weiß jemand?

Jeder Rat wird geschätzt.

+0

Welchen Adapter und welche Version von BizTalk verwenden Sie? –

+0

@OlegDeribas Biztalk 2013 und WCF-WSHttp Adapter – jekcom

+2

AFAIK WCF-WSHttp Adapter funktioniert nur mit SOAP-Nachrichten. Wenn Sie JSON verwenden möchten, ist es besser, WCF-WebHTTP zu verwenden. In BT 2013 benötigen Sie noch eine benutzerdefinierte Pipeline-Komponente, um JSON in XML zu konvertieren. Und BT 2013R2 unterstützt JSON nativ. –

Antwort

1

WCF-WSHttp-Adapter funktioniert nur mit SOAP-Nachrichten. Wenn Sie JSON verwenden möchten, ist es besser, WCF-WebHTTP zu verwenden. In BT 2013 benötigen Sie noch eine benutzerdefinierte Pipeline-Komponente, um JSON in XML zu konvertieren. Und BT 2013R2 unterstützt JSON nativ.