CONNECTED Conference 2023 - Aufzeichnungen jetzt hier verfügbar +++                     

Suche

über alle News und Events

 

Alle News

 

Für Entwickler, Architekten, Projektleiter und...

Weiterlesen

In der Welt der Softwareentwicklung ist die...

Weiterlesen

QUIBIQ spendet für den guten Zweck – und für...

Weiterlesen

Eine bestimmte Antwort auf einen HTTP Request zu...

Weiterlesen

In einer Welt, die von stetigem Wandel geprägt...

Weiterlesen

In einem unserer Kundenprojekte, war das Ziel eine...

Weiterlesen

QUIBIQ Hamburg wird mit dem Hamburger...

Weiterlesen

Zwei Tage lang wurde vom 14.-15.11 wieder das...

Weiterlesen

Was ist ein Excel-Plugin – und wann ist es...

Weiterlesen

Wir expandieren, bringen Kunden und Talente besser...

Weiterlesen

How-to: REST Service mit BizTalk 2016 bereitstellen (Teil 1)

In diesem zweiteiligen Blogpost möchten wir zuerst zeigen, wie man mit BizTalk-Boardmitteln einen RESTful Service bereitstellen kann, der auf POST Json empfängt. In Teil 2 zeigen wir, wie man diesen Service per HTTPS bereitstellen kann. Unsere Beispiele beruhen auf BizTalk 2016.

Folgende Schritte sind zu tun:

1. Erstellen einer One Way Receive Location vom Type WCF-Custom; dort als URI die gewünschte URL, z.B. localhost/JSONReceive/POSTEndpoint.svc angeben.

2. Unter „Binding“ webHttpBinding auswählen:

 

 

3. Unter „Behavior“ als EndpointBehavior „webHttp“ hinzugefügt werden; dort kann man bei Bedarf die Hilfe aktivieren, damit unter localhost/JSONReceive/POSTEndpoint.svc/help der Endpunkt zu sehen ist:

 

 

4. Für die BizTalk Host Usergruppe muss in der Kommandozeile das URLACL setzen, damit die URL für die Usergruppe reserviert wird:

netsh http add urlacl url=http://+:80/JSONReceive/POSTEndpoint.svc user="<GruppenName>"

5. Der Endpunkt sollte jetzt unter localhost/JSONReceive/POSTEndpoint.svc/TwoWayMethod JSON entgegennehmen.

Aus dem JSON wird in der Receive Location XML, standardmäßig mit dem Rootknoten „root“. Im Folgenden Screenshot ist zu sehen, wie der Request auf der rechten Seite aussieht und welches XML dann im BizTalk ankommt:

 

 

 

Da der Rootknoten wenig aussagekräftig ist und keinen Namespace enthält, sollte jetzt eine Pipeline benutzt werden, die den Rootknoten umbenennt und einen Namespace hinzufügt.

Hierbei fiel uns auf, dass die Pipeline “ESB Add Namespace and Remove Namespace” leider einen Encoding-Fehler hat, sodass Sonderzeichen “öäüß” als Fragezeichen übertragen werden.

Stattdessen sollte man kann man eine eigene Pipeline schreiben; als Vorlage dient dazu  www.codeproject.com/Articles/146182/Change-Namespace-of-a-Message-in-a-Custom-Pipeline.

Folgende Blogposts haben uns dabei geholfen:

  • „Receive JSON with BizTalk using WCF webHTTP with XML Conversion, No Code Required” von Thomas Canter (https://phidiax.com/blog/post/receive-json-with-biztalk-using-wcf-webhttp-with-xml-conversion-no-code-required)
  • „REST Start Kit for BizTalk Server” von Mikael Håkansson (http://blogical.se/blogs/mikael/archive/2012/05/28/rest-start-kit-for-biztalk-server.aspx)

 

Hilko Krüger (11/7/2017)

 

Ihre Kontaktmöglichkeiten

Sie haben eine konkrete Frage an uns


 

Bleiben Sie immer auf dem Laufenden


 

Mit meinem "Ja" erkläre ich mich mit der Verarbeitung meiner Daten zur Zusendung von Informationen einverstanden. Ich weiß, dass ich diese Erklärung jederzeit durch einfache Mitteilung widerrufen kann. Bei einem Nein an dieser Stelle erhalte ich zukünftig keine Informationen mehr.

© QUIBIQ GmbH · Impressum · Datenschutz