Am 01. Oktober ab 12:30 Uhr treffen sich...

Read more

Die Nutzung des Postman Mock Servers ist einfach...

Read more

Ein Community-Held feiert seinen Erfolg: „WOW! Ich...

Read more

Einfach großartig! Die Stimmung war hervorragend....

Read more

Rules, Rules, RULES!! Dan Toomey, The evolution of...

Read more

Keynote von Slava Koltovich, Feature: E2E - AIS...

Read more

Inspirierende Messeerfahrungen auf der 'Zukunft...

Read more

In diesem Artikel wird beschrieben, wie ihr eure...

Read more

Messaging mit dem Service Bus ermöglicht die...

Read more

Sebastian Meyer, Microsoft & SAP...

Read more

How-to: UseAmbientTransactionin BizTalk 2020 für migrierte Ports

Da sich bei einem migrierten Port mit Oracle Adapter UseAmbientTransaction nicht über die gewohnte Oberfläche konfigurieren lässt, kann das beispielsweise über den nachstehend beschriebenen Weg vollzogen werden.

1.    UseAmbientTransaction mit BizTalk OracleDB Adapter

Wenn man in BizTalk für die Kommunikation mit Oracle Transaktionen verwenden will, muss der WCF-OracleDB Adapter im Send Port oder in der Receive Location verwendet werden und dort in der Konfiguration im Reiter Messages unter Transactions die Option Use Transaction angewählt werden und im Reiter Binding muss der Parameter UseAmbientTransaction auf True gestellt sein.

Use Transactions (nur bei Send Port):

UseAmbientTransaction:


 

1.1. UseAmbientTransaction kann nicht auf True gestellt werden
Wie eben beschrieben, scheint das Einrichten eines Oracle Ports für die Verwendung von Transaktionen eine einfache Sache zu sein – aber nicht immer: wenn ein neuer Send Port mit dem WCF-OracleDB Adapter erstellt wird, ist der Parameter UseAmbientTransaction standardmässig auf True gesetzt. Wenn man aber in einem bestehenden Port, der mit einer Migration von einer älteren BizTalk Version mitkam, den Parameter UseAmbientTransaction von False auf True ändern will, kann es sein, dass man beim Versuch, die Änderung zu speichern, folgenden Fehler bekommt:

1.2. Lösungsansatz
Da sich bei einem migrierten Port mit Oracle Adapter UseAmbientTransaction nicht über die gewohnte Oberfläche konfigurieren lässt, kann dies beispielsweise über den nachstehend beschriebenen Weg vollzogen werden

1.2.1. Konfiguration über Export/Import Binding
Die Option UseAmbientTransaction für einen migrierten Port mit Oracle Adapter kann gesetzt werden, indem die Bindings Informationen für eine Applikation, in der dieser Port verwendet wird, editiert und dann importiert werden.

​​1.2.1.1. Export Bindings
Der erste Schritt ist der Export der Bindings. Rechtsklick auf die gewünschte Applikation, dann aus dem Kontextmenü Export  Bindings… auswählen: 

In der Dialogbox Export Bindings: [Application Name] kann im Textfeld Export to File: Das gewünschte Zielverzeichnis ausgewählt und der Dateiname angegeben werden und um das Bindings File so übersichtlich wie möglich zu halten, empfiehlt es sich, die Option Export bindings for the selected assembly anzuwählen und dann in der Drop‑Box ein Assembly zu selektieren, in welchem der zu bearbeitende Port verwendet wird und OK klicken:

1.2.1.2. Editieren des Bindings Files

Im eben exportierten File kann der Parameter useAmbientTransaction nun manuell editiert und auf true gesetzt werden.

1. Das eben exportierte Bindings File in einem Texteditor öffnen und dort in der entsprechenden Collection den zu bearbeitenden Port suchen:       



Hier ist es ein Send Port in der SendPortCollection und er heißt SP.Oracle

2. Unter TransportTypeData den Parameter useAmbientTransaction suchen – der steht auf false:   

(Screenshot gestaucht)

3. Bei useAmbientTransaction nun einfach false mit true überschreiben und die Datei sichern:

 

1.2.1.3. Importieren des Bindings Files

Die geänderte Konfiguration kann jetzt mit dem Binding File importiert werden.

1. Rechtsklick auf die Application, von der das Binding File exportiert worden ist und im Kontext Menu Import  Bindings… auswählen:


2. In dem Import Bindings Dialogfenster unter Select binding file das eben editierte Bindings File anwählen und OK klicken:



In der Konfiguration des bearbeiteten Ports steht jetzt unter Binding der Parameter UseAmbientTransaction auf true.

Dies ist ein Beitrag von Robert Cavigelli, Lead Developer, QUIBIQ Schweiz AG.

© QUIBIQ GmbH · Imprint · Data protection