FRENDS⁴ Common Components : Execute BizTalk Orchestration

FRENDS⁴ Common Components library contains a task to execute BizTalk orchestrations using one-way and two-way ports, which can be used to pass a message and recieve a response from BizTalk respectively. These tasks can be used to replace the old BizTalk Two-Way and One-Way calls and the Submit adapter used in conjunction with older FRENDS generations.

The tasks are located in the FRENDS.Common.Execute NuGet-package, under the names ExecuteBizTalk.ExecuteBizTalkOneWayCall and ExecuteBizTalk.ExecuteBizTalkTwoWayCall. The call is preformed utilizing the BizTalk port adapter WCF-NetNamedPipe.

Parameters

Parameter NameExplanationExample
Input messageThe message that is passed to the BizTalk orchestration. The message is given in a string format and needs to be XML.<foo>bar</foo>
Port uriThe URI used to determine which port the message is passed to. This needs to be given in the format net.pipe://localhost/{UniqueNameForPort}net.pipe://localhost/SendBizTalk
Timeout sThe timeout for the execution of the BizTalk orchestration in seconds.10

#result

The task will return true or an exception if one-way-call is used and will return the return message as delivered by the BizTalk orchestration or if there is a problem in the execution the error is returned in a SOAP fault element and an exception is thrown if the timeout is reached or the orchestration call is not successfull.

You don't have build a separate exception message as was the case with older FRENDS generations and you can just use default BizTalk exception handling instead, from where the exception is passed back to FRENDS automatically.

Configuring BizTalk Recieve Locations

  1. Select the WCF-NetNamedPipe adapter:
  2. Select your desired Pipelines
  3. In the configure section enter an unique address to the URI field in the format net.pipe://localhost/{UniqueNameForPort}. This is the URI you will be using to configure the FRENDS task.
  4. Set your desired Timeouts in the timeout tab
  5. In the security tab set "Security Mode" to "None":
     
  6. In the Messages tab, select "Body" option for both Inbound and Outbound fields. Also if you wish to recieve error information from BizTalk in case of exceptions set both "Suspend request message on failure" and "Include exception detail in faults"  to true:
     
  7. Now you can use the URI field to configure FRENDS tasks: