Integrating Integrators – BizTalk, AppFabric, Workflow, Azure, and Beyond
Join
Sign in
Search Options
Search Everything
Search BizTalk Blogs
Home
AppFabric
BizTalk Server
Windows Workflow
Jobs (Hire A Guru)
More ...
Home
»
BizTalk Server
»
BizTalk Blogs
»
Stephen W. Thomas BizTalk MVP
»
Working With Start Orchestration Shapes, Self Correlated Ports, and Configured Port Parameters
Working With Start Orchestration Shapes, Self Correlated Ports, and Configured Port Parameters
BizTalk Blogs
This group is for blogs related to BizTalk Server. This includes Community Syndicated blogs and Stephen W. Thomas’s blog.
Get this RSS feed
Home
Blogs
Sitewide Application Navigation
Home
Blogs
Media
Forums
Wikis
Groups
Options
Share this
Monthly Archive List
Archives
April 2012
(1)
February 2012
(1)
January 2012
(1)
September 2011
(1)
August 2011
(3)
March 2011
(1)
February 2011
(2)
January 2011
(1)
December 2010
(1)
November 2010
(2)
October 2010
(4)
September 2010
(3)
August 2010
(2)
October 2009
(1)
June 2009
(1)
May 2009
(1)
April 2009
(5)
February 2009
(1)
January 2009
(1)
December 2008
(1)
November 2008
(4)
October 2008
(3)
September 2008
(1)
May 2008
(1)
April 2008
(2)
March 2008
(3)
February 2008
(3)
January 2008
(1)
December 2007
(3)
November 2007
(4)
October 2007
(2)
September 2007
(2)
July 2007
(1)
May 2007
(2)
April 2007
(1)
December 2006
(3)
November 2006
(2)
October 2006
(2)
September 2006
(5)
August 2006
(5)
July 2006
(5)
April 2006
(4)
March 2006
(4)
February 2006
(1)
January 2006
(2)
December 2005
(3)
November 2005
(3)
October 2005
(5)
September 2005
(9)
August 2005
(9)
July 2005
(7)
June 2005
(7)
May 2005
(1)
April 2005
(6)
March 2005
(3)
February 2005
(4)
January 2005
(3)
December 2004
(2)
November 2004
(3)
October 2004
(8)
September 2004
(5)
August 2004
(7)
July 2004
(4)
Tags
Applied Architecture Patterns on the Microsoft Platform
biztalk
biztalk 2004
biztalk 2006
BizTalk 2009
biztalk errors
Biztalker
Book
Contest
convoy
debatching
deployment
Dublin
flat files
maps
nack
orchestration
Oslo
pipelines
promoted properties
rules engine
schema
testing
untyped messages
Workflow 4
Stephen W. Thomas BizTalk MVP
Insight and guidance on BizTalk, AppFabric, and related Microsoft technologies.
RSS for posts
Working With Start Orchestration Shapes, Self Correlated Ports, and Configured Port Parameters
Rate This
Stephen W. Thomas
Mon, Feb 27 2006 9:09 PM
Comments
0
These three topics could be entire blog posts on there own.
In this case, I’ll briefly cover all three and show how to use them all together.
Start Orchestration – This shape give you the ability to asynchronously start a new Orchestration.
You can pass in all types of parameters but you can not return parameters like the Call Orchestration Shape.
Passing
Configured Port
Parameters – This is an input parameter type for Call and Start Orchestrations.
This can be used to pass in already configured ports to use to send messages back into the original Orchestration.
Direct Binding using Self Correlation – When passing Self Correlation ports to a Started Orchestration a unique token is placed in BTS.PartnerService.
This is used for the return subscription.
I have not worked with Self Correlation Ports in any other scenario although they can be used on there own without a Start or Called Orchestration.
Solution Overview:
A single message is received into a Master Orchestration (Master).
This single message is then used to Start two different Orchestrations (SharedLogicA and SharedLogicB).
Inside these two Orchestrations, the message is “processed” (i.e. mapped and a 5 to 15 second delay is used to simulate processing).
The resulting mapped messages are returned to the Master Orchestration.
A single result message is sent out.
Download:
Passing Configured Port Parameters Sample
The master Orchestration looks something like this:
How does this differ from Direct Binding Using Partner Ports?
It is very similar except that you do not use the Start Orchestration shape (thus can not pass parameters, multiple messages, and so on).
Using Partner Ports, if you wanted a message back you would need to create a Correction Set and work out all those complexities.
There is some other under the cover differences between the two but that is for another post.
How to set this up on your own:
Step 1: Create the Master Orchestration with a Receive Port and a SharedLogic Orchestration.
Set up all required input and output messages.
Set up the Send Shape inside the SharedLogic Orchestation to send back the correct message.
Step 2: Inside the Master Orchestration add the Receive Shape and set it up to receive the response message from the SharedLogic Orchestration.
Select the Red ! to configure the Operation for the Receive Shape.
Give the Port a name (Port_A), create a new port type (PortType_A), select Directing Binding – Self Correlation.
Step 3: Inside the SharedLogic Orchestration add the parameters that will be passed in by from the Master.
In this case, an input message (InputA) and a configured port parameter (Port_1).
For the port type, select the type create above (PortType_A), for Port Binding select “I’ll always be sending messages on this port”.
Connect your Send Shape to your new Port.
Step 4: Lastly, inside your Master Orchestration add a Start Orchestration Shape.
Select your Sharedlogic Orchestration.
Set your two input parameters if needed.
Note that you can send and receive messages on the same port type when using the Start Orchestration Shape.
If you tried this same approach with the Call Orchestration shape you would get a build error.
Read more about this on Charles Young awesome article on this
topic
.
0 Comments
orchestration
,
ports
Your comment has been posted.
Close
Thank you, your comment requires moderation so it may take a while to appear.
Close
Leave a Comment
Name
Website
Comment
Post