Geeks With Blogs
ErwinAI - Enterprise Application Integration (EAI) blog on BizTalk 2004, Visual Studio, and application integration

Suppose you have multiple orchestrations that you want to deploy and start, and you bind the ports dynamically. Then, you might want to bind different receive shapes in the orchestrations to the same receive port.

Is this possible? In general: yes.

There is no real limitation to multiple orchestrations listening to the same receive port, if only each receive shape on that port listens to a different message type. The message type is the combination of:

  • Root node name
  • Namespace

When you attempt to start an orchestration that attempts to subscribe to a message type on a port for which already a subscription exists (other orchestration, started), you will get an error message, saying something about an already existing subscription.

So, take care that the message types can be distinguished by the runtime engine.

Another point to take into consideration. Suppose you want to subscribe two orchestrations to a single receive port with a file location. After you have started the first orchestration, the non-selective file adapter is also started on the runtime environment. That means that any file placed in this receive directory that matches the filename filter expression (for example *.xml) will be “consumed” by the file adapter engine. Only after consuming the file, the runtime engine decides to which orchestration the message (based on the file) will be sent, if any. So, the file will disappear out of the directory, and BizTalk might report an error because it has read a file for which no subscription exists. Result: file is gone and nothing happened.

Posted on Tuesday, November 8, 2005 10:23 AM BizTalk 2004 Hints, Tips & Tricks | Back to top

Comments on this post: BizTalk 2004 - Multiple orchestrations listening to the same receive port

No comments posted yet.
Your comment:
 (will show your gravatar)

Copyright © Erwin Homan | Powered by: