<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:image="http://purl.org/rss/1.0/modules/image/">
    <channel>
        <title>  BizTalk</title>
        <link>http://geekswithblogs.net/LeonidGaneline/category/3545.aspx</link>
        <description>  BizTalk</description>
        <language>en-US</language>
        <copyright>Leonid Ganeline</copyright>
        <managingEditor>leo.gan.57@gmail.com</managingEditor>
        <generator>Subtext Version 0.0.0.0</generator>
        <item>
            <title>BizTalk and RabbitMQ</title>
            <link>http://geekswithblogs.net/LeonidGaneline/archive/2012/02/09/biztalk-and-rabbitmq.aspx</link>
            <description>&lt;p style="MARGIN: 0in 0in 10pt"&gt;&lt;a href="http://social.technet.microsoft.com/wiki/contents/articles/7401.biztalk-and-rabbitmq.aspx" target="_blank"&gt;The same article in the TechNet.&lt;/a&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;If you are working with queues in BizTalk Server, the most possible it is the MSMQ (in my experience).&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;MSMQ is an old man of the Microsoft technology stack. It was created when there were no good standards for messaging. Now MSMQ is wrapped partly in the .NET System.Messaging namespace. It is just a small facelift. MSMQ is still a proprietary technology without well-defined messaging protocol. It means, you cannot use the MSMQ messaging protocol without MSMQ itself.&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;Now we see vortex of new messaging standards and technologies. One on the top is the &lt;a href="http://en.wikipedia.org/wiki/AMQP"&gt;AMQP&lt;/a&gt; standard and one of the bold implementation of AMQP is the &lt;a href="http://www.rabbitmq.com/"&gt;RabbitMQ&lt;/a&gt;&lt;a name="_Hlt316291489"&gt;&lt;/a&gt;&lt;a name="_Hlt316291490"&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;It is one more protocol, one more messaging system which, for sure, can be integrated with BizTalk Server.&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;Here I will implement the standard queue messaging: sending and receiving messages from BizTalk down through the RabbitMQ queue. I am using the WCF-Custom LOB Adapter (provided from BizTalk side) and the WCF RabbitMQ Binding (provided from RabbitMQ side) to link two systems.&lt;/p&gt;
&lt;h2 style="MARGIN: 10pt 0in 0pt"&gt;&lt;a name="Installation_and_preparation"&gt;&lt;/a&gt;Installation and preparation&lt;/h2&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;Assuming the BizTalk Server and the Visual Studio 2010 are also installed.&lt;/p&gt;
&lt;h3 style="MARGIN: 10pt 0in 0pt"&gt;&lt;a name="Installing_RabbitMQ_Service"&gt;&lt;/a&gt;Installing RabbitMQ Service&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;Go to the &lt;a href="http://www.rabbitmq.com/dotnet.html"&gt;RabbitMQ site and download the last versions of server and client&lt;/a&gt; for Windows. For me it was &lt;i&gt;rabbitmq-server-2.7.1.exe&lt;/i&gt; and &lt;i&gt;rabbitmq-dotnet-client-2.7.1-dotnet-3.0.zip&lt;/i&gt;. Client includes the WCF binding which I will use lately. There are several good manuals: &lt;i&gt;rabbitmq-dotnet-client-2.7.1-user-guide.pdf&lt;/i&gt; and &lt;i&gt;rabbitmq-dotnet-client-2.7.1-wcf-service-model.pdf&lt;/i&gt;. I was quite impressed by quality distributives and documentation. 
&lt;/li&gt;&lt;li&gt;Start &lt;i&gt;rabbitmq--server-x.x.x.exe&lt;/i&gt;. It will request to install &lt;a href="http://www.erlang.org/"&gt;Erlang&lt;/a&gt;. Agree, go to the Erlang site [http://www.erlang.org/] and download it. For me it was &lt;i&gt;Erlang.otp_win32_R15B.exe&lt;/i&gt; 
&lt;/li&gt;&lt;li&gt;Start &lt;i&gt;Erlang…exe&lt;/i&gt;. Installation went smoothly. 
&lt;/li&gt;&lt;li&gt;Start &lt;i&gt;rabbitmq--server-x.x.x.exe&lt;/i&gt; again. Installation went smoothly. &lt;/li&gt;&lt;/ol&gt;
&lt;p&gt;&lt;b&gt;RabbitMQ&lt;/b&gt; service is installed. You can see it in the Services window. &lt;/p&gt;
&lt;h3 style="MARGIN: 10pt 0in 0pt"&gt;&lt;a name="Creating_RabbitMQ_Client_Base_Assemblies"&gt;&lt;/a&gt;Creating RabbitMQ Client Base Assemblies&lt;/h3&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt; Now it is time to install the client for .NET and WCF binding extension. Use &lt;a href="http://www.rabbitmq.com/build-dotnet-client.html"&gt;this manual&lt;/a&gt;. &lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;s&gt; &lt;/s&gt;&lt;a href="http://www.rabbitmq.com/dotnet.html"&gt;&lt;s&gt;Downloaded&lt;/s&gt;&lt;/a&gt;&lt;s&gt; the .msi. Installed it. Hmm… no Rabbit.Client.dll (When I started with Examples, they all need this file. It is a main client dll).&lt;/s&gt;&lt;strike&gt;&lt;a href="http://social.technet.microsoft.com/wiki/cfs-file.ashx/__key/communityserver-wikis-components-files/00-00-00-00-05/3250.RabbitSite.jpg"&gt;&lt;br /&gt;&lt;br /&gt;&lt;img style="BORDER-BOTTOM: 0px solid; BORDER-LEFT: 0px solid; BORDER-TOP: 0px solid; BORDER-RIGHT: 0px solid" alt="" src="http://social.technet.microsoft.com/wiki/resized-image.ashx/__size/550x468/__key/communityserver-wikis-components-files/00-00-00-00-05/3250.RabbitSite.jpg" /&gt;&lt;/a&gt;&lt;/strike&gt; 
&lt;/li&gt;&lt;li&gt;&lt;strike&gt;Downloaded the *-dotnet-3.0.zip. Nope, it was wrong.&lt;/strike&gt; 
&lt;/li&gt;&lt;li&gt;We need the last &lt;i&gt;rabbitmq-dotnet-client-2.7.1.zip&lt;/i&gt; file. Extract everything from this zip. 
&lt;/li&gt;&lt;li&gt;Made a copy of the &lt;i&gt;Local.props.example&lt;/i&gt; file to &lt;i&gt;Local.props&lt;/i&gt; file in the same root folder. 
&lt;/li&gt;&lt;li&gt;Start Visual Studio with RabbitMQDotNetClient.sln and successfully build it. The &lt;i&gt;..\rabbitmq-dotnet-client-2.7.1\projects\wcf\RabbitMQ.ServiceModel\obj\Debug\RabbitMQ.ServiceModel.dll &lt;/i&gt;was created. This dll together with the &lt;i&gt;RabbitMQ.Client.dll&lt;/i&gt; are the assemblies used by the RabbitMQ clients. &lt;/li&gt;&lt;/ol&gt;
&lt;h3 style="MARGIN: 10pt 0in 0pt"&gt;&lt;a name="Set_up_the_RabbitMQ_binding_extension"&gt;&lt;/a&gt;Set up the RabbitMQ binding extension&lt;/h3&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;Here I really lost a lot of time. It is easy for the C# clients; the RabbitMQ.ServiceModel.Test gives all the information. But we have to use this binding from the WCF-Custom LOB adapter. To do so we have to add the assemblies to GAC, change &lt;em&gt;machine.config&lt;/em&gt;, etc. See the WCF LOP Adapter documentation.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Sign the RabbitMQ.ServiceModel and RabbitMQ.Client projects and GAC-ed them. 
&lt;/li&gt;&lt;li&gt;Insert  an &amp;lt;add&amp;gt; node into the config section of &lt;em&gt;machine.config&lt;/em&gt;: &lt;/li&gt;&lt;/ol&gt;
&lt;blockquote style="MARGIN-RIGHT: 0px" dir="ltr"&gt;
&lt;blockquote style="MARGIN-RIGHT: 0px" dir="ltr"&gt;
&lt;p&gt;&amp;lt;extensions&amp;gt;&lt;br /&gt;      &amp;lt;bindingExtensions&amp;gt;&lt;br /&gt;        …&lt;br /&gt;        &amp;lt;add  name="RabbitMQBinding" &lt;br /&gt;          type="RabbitMQ.ServiceModel.RabbitMQBindingSection, RabbitMQ.ServiceModel, Version=0.0.0.0, Culture=neutral,   PublicKeyToken=1751e286f1ab778d"/&amp;gt;&lt;br /&gt;      &amp;lt;/bindingExtensions&amp;gt;&lt;br /&gt;    &amp;lt;/extensions&amp;gt;&lt;/p&gt;&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;b&gt;Note: &lt;/b&gt;&lt;/p&gt;&lt;/blockquote&gt;
&lt;ul&gt;
&lt;li&gt;When the binding extension assembly is placed in GAC, we cannot use the above section in the &lt;i&gt;app.config&lt;/i&gt; file! This &amp;lt;add&amp;gt; element should be placed only into the &lt;i&gt;machine.config&lt;/i&gt; file. Otherwise it cannot be seen in the binding extension list of the WCF LOB Adapter. 
&lt;/li&gt;&lt;li&gt;Use &amp;gt;&lt;i&gt;Gacutil.exe /l RabbitMQ.ServiceModel&lt;/i&gt;&lt;br /&gt;to get the real parameters for your assembly. &lt;/li&gt;&lt;/ul&gt;I have several &lt;i&gt;machine.config&lt;/i&gt; files in folders:&lt;br /&gt;&lt;/blockquote&gt;
&lt;ul&gt;
&lt;ul&gt;
&lt;li&gt;C:\Windows\Microsoft.NET\Framework\v&lt;b&gt;2.0&lt;/b&gt;.50727\CONFIG 
&lt;/li&gt;&lt;li&gt;C:\Windows\Microsoft.NET\Framework\v&lt;b&gt;4.0&lt;/b&gt;.30319\Config 
&lt;/li&gt;&lt;li&gt;C:\Windows\Microsoft.NET\Framework&lt;b&gt;64&lt;/b&gt;\v&lt;b&gt;2.0&lt;/b&gt;.50727\CONFIG 
&lt;/li&gt;&lt;li&gt;C:\Windows\Microsoft.NET\Framework&lt;b&gt;64&lt;/b&gt;\v&lt;b&gt;4.0&lt;/b&gt;.30319\Config &lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;
&lt;p style="MARGIN: 0in 0in 10pt 0.5in"&gt;Which one to use? My VM is 64bit. BizTalk Host of the port is 32bit. BizTalk is the 2010 version. In my case the right file was the C:\Windows\Microsoft.NET\Framework\v&lt;b&gt;4.0&lt;/b&gt;.30319\Config\machine.config.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://social.technet.microsoft.com/wiki/cfs-file.ashx/__key/communityserver-wikis-components-files/00-00-00-00-05/1016.BindingList.gif"&gt;&lt;img style="BORDER-BOTTOM: 0px solid; BORDER-LEFT: 0px solid; BORDER-TOP: 0px solid; BORDER-RIGHT: 0px solid" alt="" src="http://social.technet.microsoft.com/wiki/resized-image.ashx/__size/420x580/__key/communityserver-wikis-components-files/00-00-00-00-05/1016.BindingList.gif" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Finally the RabbitMQ binding installed and we can see it in the Binding Type list for WCF-Custom adapter.&lt;/p&gt;
&lt;h2 style="MARGIN: 10pt 0in 0pt"&gt;&lt;a name="Testing"&gt;&lt;/a&gt;Testing&lt;/h2&gt;
&lt;h3 style="MARGIN: 10pt 0in 0pt"&gt;&lt;a name="Creating_the_BizTalk_test"&gt;&lt;/a&gt;Creating the BizTalk test&lt;/h3&gt;
&lt;blockquote style="MARGIN-RIGHT: 0px" dir="ltr"&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;I have created two pairs of port for testing.&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt 0.5in"&gt;File RP -&amp;gt; WCF-Custom (RabbitMQ) SP -&amp;gt;&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt 1in"&gt;&lt;strong&gt; [RabbitMQ Server]&lt;/strong&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt 0.5in"&gt; -&amp;gt; WCF-Custom (RabbitMQ RP) -&amp;gt; File RP&lt;/p&gt;&lt;/blockquote&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt; &lt;/p&gt;
&lt;blockquote style="MARGIN-RIGHT: 0px" dir="ltr"&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;I’ve changed only two parameters: “hostname” and “oneWay” and let others be default:&lt;/p&gt;&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p style="MARGIN: 0in 0in 10pt 0.5in"&gt; &lt;a href="http://social.technet.microsoft.com/wiki/cfs-file.ashx/__key/communityserver-wikis-components-files/00-00-00-00-05/2678.SP.TransportParams.gif"&gt;&lt;img style="BORDER-BOTTOM: 0px solid; BORDER-LEFT: 0px solid; BORDER-TOP: 0px solid; BORDER-RIGHT: 0px solid" alt="" src="http://social.technet.microsoft.com/wiki/resized-image.ashx/__size/420x580/__key/communityserver-wikis-components-files/00-00-00-00-05/2678.SP.TransportParams.gif" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;URL-s for the Send and Receive RabbitMQ Ports set up as “soap.amqp://192.168.11.128/Mytest” for both of them.&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;Let’s test it.&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;Small text file was dropped into In folder, consumed by Receive Port, went through the RabbitMQ queue, and appeared in Out folder. Success.&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;&lt;b&gt;Note:&lt;/b&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Now the RabbitMQ binding is set up to process only well-formed Xml documents. 
&lt;/li&gt;&lt;li&gt;“localhost” as “hostname” works fine. &lt;/li&gt;&lt;/ul&gt;&lt;/blockquote&gt;
&lt;h3 style="MARGIN: 10pt 0in 0pt"&gt;&lt;a name="Using_the_RabbitMQ_Binding_Element"&gt;&lt;/a&gt;Using the RabbitMQ Binding Element&lt;/h3&gt;
&lt;blockquote style="MARGIN-RIGHT: 0px" dir="ltr"&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;The RabbitMQ binding is limited to the Text messaging encoding. If we need to change it or add more binding extensions, we have to use the &lt;strong&gt;customBinding&lt;/strong&gt; type and use the &lt;strong&gt;rabbitMQBindingElement&lt;/strong&gt; together with another element (including another encoding). How to do this?&lt;/p&gt;
&lt;p&gt;1. Add the &amp;lt;add&amp;gt; node to the &lt;i&gt;machine.config&lt;/i&gt;:&lt;/p&gt;
&lt;blockquote style="MARGIN-RIGHT: 0px" dir="ltr"&gt;
&lt;blockquote style="MARGIN-RIGHT: 0px" dir="ltr"&gt;
&lt;blockquote style="MARGIN-RIGHT: 0px" dir="ltr"&gt;
&lt;p&gt;&amp;lt;bindingElementExtensions&amp;gt;&lt;br /&gt;                           …&lt;br /&gt;        &amp;lt;add name="rabbitMQBindingElement" type="RabbitMQ.ServiceModel.RabbitMQTransportElement, RabbitMQ.ServiceModel,   Version=0.0.0.0, Culture=neutral, PublicKeyToken=1751e286f1ab778d"/&amp;gt;&lt;br /&gt;&amp;lt;/bindingElementExtensions&amp;gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;
&lt;p&gt; 2. Change the Receive Location transport parameters. It was the &lt;i&gt;RabbitMQBinding&lt;/i&gt;. Change it to the &lt;i&gt;customBinding&lt;/i&gt;. The Transport Binding Element has to be changed to the &lt;b&gt;rabbitMQBindingElement&lt;/b&gt;. I changed only one parameter: &lt;i&gt;hostname&lt;/i&gt; as “localhost”.&lt;br /&gt;&lt;br /&gt; &lt;a href="http://social.technet.microsoft.com/wiki/cfs-file.ashx/__key/communityserver-wikis-components-files/00-00-00-00-05/6825.SP.CustomBindingElement.gif"&gt;&lt;img style="BORDER-BOTTOM: 0px solid; BORDER-LEFT: 0px solid; BORDER-TOP: 0px solid; BORDER-RIGHT: 0px solid" alt="" src="http://social.technet.microsoft.com/wiki/resized-image.ashx/__size/420x580/__key/communityserver-wikis-components-files/00-00-00-00-05/6825.SP.CustomBindingElement.gif" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt; 3. Test it as previously. &lt;/p&gt;&lt;/blockquote&gt;
&lt;h3 style="MARGIN: 10pt 0in 0pt"&gt;&lt;a name="Conclusion"&gt;&lt;/a&gt;Conclusion&lt;/h3&gt;
&lt;blockquote style="MARGIN-RIGHT: 0px" dir="ltr"&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;Using RabbitMQ as one more transport for BizTalk and/or WCF applications is possible and straightforward. The learning curve is short. There are not too many issues with setting up the RabbitMQ Service and Client parts. Actually there isn’t any RabbitMQ side which is exposed to the BizTalk directly. RabbitMQ works only with WCF-Custom adapter and only this adapter communicates with RabbitMQ Service.&lt;br /&gt;Now the RabbitMQ implements limited client functionality for the WCF. RabbitMQ implements the version 9 of the AMQP protocol, not the last 1 version.&lt;/p&gt;&lt;/blockquote&gt;
&lt;h3 style="MARGIN: 10pt 0in 0pt"&gt;&lt;a name="Next_steps"&gt;&lt;/a&gt;Next steps&lt;/h3&gt;
&lt;blockquote style="MARGIN-RIGHT: 0px" dir="ltr"&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;Next steps are to test this solution with different messaging patterns and try to figure out how to use RabbitMQ advantages (if there are some) over the MSMQ. Potentially the advantages are the simplest implementation of the Request/Response and Duplex patterns, better scalability, better performance, better manageability and support.&lt;/p&gt;&lt;/blockquote&gt;
&lt;p style="MARGIN: 0in 0in 10pt 0.25in"&gt; &lt;/p&gt; &lt;img src="http://geekswithblogs.net/LeonidGaneline/aggbug/148650.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Leonid Ganeline</dc:creator>
            <guid>http://geekswithblogs.net/LeonidGaneline/archive/2012/02/09/biztalk-and-rabbitmq.aspx</guid>
            <pubDate>Thu, 09 Feb 2012 21:18:40 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/LeonidGaneline/comments/148650.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/LeonidGaneline/archive/2012/02/09/biztalk-and-rabbitmq.aspx#feedback</comments>
            <slash:comments>4</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/LeonidGaneline/comments/commentRss/148650.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/LeonidGaneline/services/trackbacks/148650.aspx</trackback:ping>
        </item>
        <item>
            <title>BizTalk and 0MQ (ZeroMQ)</title>
            <link>http://geekswithblogs.net/LeonidGaneline/archive/2012/01/19/biztalk-and-0mq-zeromq.aspx</link>
            <description>&lt;p&gt;It is stupid to compare those two beasts.&lt;/p&gt;
&lt;p&gt;BizTalk Server is a pricey, huge development and run-time system, it includes tons of the tools, supports tons of protocols and systems. It works for very specialized middle ware integration stack. It integrates big and complex systems as SAP, CRM, Oracle and intermediates many protocols and standards as SOAP, EDI, SWIFT, FTP, tons of them. &lt;/p&gt;
&lt;p align="center"&gt;It is a messaging system.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://zeromq.org" target="_blank"&gt;ZeroMQ&lt;/a&gt; is a low-level, wire-level protocol, the same level as TCP. It has ultra-simple API. It is implemented as a library for dozens languages as C#, Java, Python, PHP, C++, COBOL, Ada, Haskel, F#, Erlang, etc. It works in the most OS: Windows, Linux, QNX... It is free and works under open-source license.&lt;/p&gt;
&lt;p align="center"&gt;It is a messaging system.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;BizTalk implements many messaging exchange patterns: Request-Response, Pub-Sub, Queue, Message Broker, Router, Convoy.&lt;/p&gt;
&lt;p&gt;0MQ implements the same: Request-Response, Pub-Sub, Pub-Sub with Topics, Queue, Message Broker, Router...&lt;/p&gt;
&lt;p&gt;BizTalk development stack is compounded of several editors. BizTalk run-time stack includes several services on top of SQL Server, several tools, and tons of dll-s and SQL code.&lt;/p&gt;
&lt;p&gt;0MQ is just a library, a dll. Library per language, per OS. No dedicated services.&lt;/p&gt;
&lt;p&gt;...&lt;br /&gt;Why I feel so comfortable with this 0MQ?&lt;br /&gt;Why I think it is a serious choice to do messaging in my real-life messaging?&lt;br /&gt;Do I want to abandon the comfort of a big track to ride almost bare-bone wheels?&lt;/p&gt;
&lt;p&gt;I am not the only one who comparing 0MQ with big brokers. There is interesting &lt;a href="http://www.rabbitmq.com/blog/tag/zeromq/"&gt;article comparing RabittMQ (AMQP) and 0MQ&lt;/a&gt;.&lt;/p&gt; &lt;img src="http://geekswithblogs.net/LeonidGaneline/aggbug/148426.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Leonid Ganeline</dc:creator>
            <guid>http://geekswithblogs.net/LeonidGaneline/archive/2012/01/19/biztalk-and-0mq-zeromq.aspx</guid>
            <pubDate>Thu, 19 Jan 2012 17:23:50 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/LeonidGaneline/comments/148426.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/LeonidGaneline/archive/2012/01/19/biztalk-and-0mq-zeromq.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/LeonidGaneline/comments/commentRss/148426.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/LeonidGaneline/services/trackbacks/148426.aspx</trackback:ping>
        </item>
        <item>
            <title>BizTalk: Ordered Delivery</title>
            <link>http://geekswithblogs.net/LeonidGaneline/archive/2012/01/11/biztalk-ordered-delivery.aspx</link>
            <description>&lt;h1 style="MARGIN: 24pt 0in 0pt"&gt; &lt;/h1&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;It is one more description of the Ordered Delivery (OD) in BizTalk. &lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;The &lt;a href="http://msdn.microsoft.com/en-us/library/aa559637.aspx"&gt;main article about it is in MSDN&lt;/a&gt;.&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;Here I am discussing the BizTalk Ordered Delivery “implementation details”.&lt;/p&gt;
&lt;h2 style="MARGIN: 10pt 0in 0pt"&gt;&lt;a name="OD_Considerations"&gt;&lt;/a&gt;OD Considerations &lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Ordered Delivery (sequential) mode is opposite of the “Parallel Delivery” mode. Parallel Delivery is the most productive mode; the Ordered Delivery is less productive mode. 
&lt;/li&gt;&lt;li&gt;Transports such MSMQ and protocols, supporting the WS-ReliableMessaging, are the protocols supporting OD. Other protocols as FTP, File, SQL, SMTP etc. do not have notion of the “order”. 
&lt;/li&gt;&lt;li&gt;BizTalk application usually is a part of the whole message workflow. 
&lt;/li&gt;&lt;li&gt;There are two approaches in the OD implementation: 
&lt;ul&gt;
&lt;li&gt;All steps of the message workflow independently support OD. 
&lt;/li&gt;&lt;li&gt;A Destination System implements the re-sequencing and manages lost and duplicate messages. &lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;Order is relative. Sequences can be ordered regards one or several parameters. For example, OD for the Company or for the Company + Department. &lt;/li&gt;&lt;/ul&gt;
&lt;h2 style="MARGIN: 10pt 0in 0pt"&gt;&lt;a name="OD_and_the_BizTalk_Architecture"&gt;&lt;/a&gt;OD and the BizTalk Architecture&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;MessageBox is an implementation of the Message Queue. OD is an intrinsic feature of the MessageBox. 
&lt;/li&gt;&lt;li&gt;The BizTalk Server works in the Parallel Delivery mode by default. 
&lt;/li&gt;&lt;li&gt;There are three parts in the BizTalk message exchange outside of the MessageBox in relation to OD: Receive Locations; Orchestrations; Send ports. 
&lt;ul&gt;
&lt;li&gt;Receive Locations support OD on the Transport level (say, MSMQ and some WCF adapters). 
&lt;/li&gt;&lt;li&gt;OD in Orchestrations is implemented by the sequential convoy pattern. 
&lt;/li&gt;&lt;li&gt;Send ports support OD for all static adapters. &lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;The BizTalk Pipelines (part of Receive and Send Ports) always process messages in order using streams. &lt;/li&gt;&lt;/ul&gt;
&lt;h3 style="MARGIN: 10pt 0in 0pt"&gt;&lt;a name="OD_and_Ports"&gt;&lt;/a&gt;OD and Ports&lt;/h3&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;To force Send Ports work in order we set up a flag the “Ordered Delivery” in Send Ports, then the BizTalk MessageBox takes care of implementing OD.&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;To force Receive Locations work in order we set up flag the “Ordered Delivery” option in the Receive Location &lt;strong&gt;Transports&lt;/strong&gt;, whenever is possible. Then the BizTalk Transport Adapter takes care of implementing OD.&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;Ordered Delivery Send Port instance works as a singleton service. Since start it stays in Running state. It will not recycle if we restart its Host Instance. We could manually terminate it, if we want.&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt; &lt;/p&gt;
&lt;h3 style="MARGIN: 10pt 0in 0pt"&gt;&lt;a name="OD_and_Orchestrations"&gt;&lt;/a&gt;OD and Orchestrations&lt;/h3&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;MessageBox implements the convoy message exchange pattern [See &lt;a href="http://msdn.microsoft.com/en-us/library/aa578692(v=bts.70).aspx"&gt;Using Correlations in Orchestrations&lt;/a&gt;]. See the detail convoy description in the &lt;a href="http://msdn.microsoft.com/en-us/library/ms942189(v=bts.10).aspx"&gt;BizTalk Server 2004 Convoy Deep Dive&lt;/a&gt; article. &lt;br /&gt;It is not just a design pattern that developer should follow. There are special mechanisms inside MessageBox responsible for implementing OD.&lt;/p&gt;
&lt;h3 style="MARGIN: 10pt 0in 0pt"&gt;&lt;a name="OD_and_Orchestration_Sample"&gt;&lt;/a&gt;OD and Orchestration: Sample&lt;/h3&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt; &lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;Imagine four Orchestrations which implement four approaches to the sequencing. &lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt" dir="ltr"&gt;&lt;a href="http://social.technet.microsoft.com/wiki/cfs-file.ashx/__key/communityserver-wikis-components-files/00-00-00-00-05/4744.OrchestrationParameters.2.gif"&gt;&lt;img style="BORDER-BOTTOM: 0px solid; BORDER-LEFT: 0px solid; BORDER-TOP: 0px solid; BORDER-RIGHT: 0px solid" alt="" src="http://social.technet.microsoft.com/wiki/resized-image.ashx/__size/550x304/__key/communityserver-wikis-components-files/00-00-00-00-05/4744.OrchestrationParameters.2.gif" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The first is the &lt;b&gt;ProcessNoOrder&lt;/b&gt; Orchestration. It processes all messages without any order. One ProcessNoOrder Orchestration instance will be created for &lt;b&gt;each&lt;/b&gt; inbound message.&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;The &lt;b&gt;ProcessInOrder&lt;/b&gt; Orchestration processes all messages in &lt;b&gt;one&lt;/b&gt; sequence. &lt;b&gt;Only one&lt;/b&gt; ProcessInOrder Orchestration instance will be created.&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;The &lt;b&gt;ProcessInOrderByCompany&lt;/b&gt; Orchestration processes messages in sequences &lt;b&gt;correlated &lt;/b&gt;by the&lt;b&gt; Company&lt;/b&gt; value (A, B, C, D, etc.). The separate queue is created for each new value of the Company. Messages inside queues are processed in order. Queues for different Companies are independent. A separate ProcessInOrderByCompany Orchestration instance will be created for each new Company value.&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;The &lt;b&gt;ProcessInOrderByProduct&lt;/b&gt; Orchestration works exactly as the &lt;b&gt;ProcessInOrderByCompany&lt;/b&gt; Orchestration but &lt;b&gt;correlated &lt;/b&gt;by the&lt;b&gt; Product&lt;/b&gt; value (xx, yy, etc.). &lt;/p&gt;
&lt;h2 style="MARGIN: 10pt 0in 0pt"&gt;&lt;a name="Discussions"&gt;&lt;/a&gt;Discussions&lt;/h2&gt;
&lt;h3 style="MARGIN: 10pt 0in 0pt"&gt;&lt;a name="Performance"&gt;&lt;/a&gt;Performance&lt;/h3&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;By default all Orchestration and Messaging Service instances works in the Parallel Delivery mode with maximum performance.&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;If we check up the Ordered Delivery option in Send Port, BizTalk will initiate the Send Port instance as a singleton service. It is always a single instance. We don’t have the flexibility of the Orchestration where we could tune up “the proportion of the sequencing” and could control the recycling of the service instance.&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;Send Port OD could be in two states, on and off: &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;OD is off: a service instance per message, one message per queue, maximum performance. 
&lt;/li&gt;&lt;li&gt;OD is on: one infinite service instance, all messages in one queue, minimum performance. &lt;/li&gt;&lt;/ul&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;Orchestration OD could be in two states also, on and off:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;OD is off: a service instance per one activating message, one activating message per queue, maximum performance. 
&lt;/li&gt;&lt;li&gt;OD is on: one or several service instances, one per new correlation set value; all correlated messages per queue; performance is from min to max, depends ot the correlation set.. &lt;/li&gt;&lt;/ul&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;Carefully designing the correlation sets we could tune up the performance of the Orchestration. For example, if we only care of the document order for each separate Company, we include the Company to the Correlation set. If we had thousand documents related to hundreds companies, the performance will be near maximum. If there are only two companies, the performance will be near minimum, and we should consider improving the correlation with one more parameter.&lt;/p&gt;
&lt;h3 style="MARGIN: 10pt 0in 0pt"&gt;&lt;a name="Orchestrations_and_Zombies"&gt;&lt;/a&gt;Orchestrations and Zombies &lt;/h3&gt;
&lt;div style="BORDER-BOTTOM: #aaaaaa 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 2pt; PADDING-LEFT: 0in; PADDING-RIGHT: 0in; BACKGROUND: #f9f9f9; BORDER-TOP: medium none; BORDER-RIGHT: medium none; PADDING-TOP: 0in"&gt;
&lt;p style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; MARGIN: 0in 0in 10pt; PADDING-LEFT: 0in; PADDING-RIGHT: 0in; BACKGROUND: #f9f9f9; BORDER-TOP: medium none; BORDER-RIGHT: medium none; PADDING-TOP: 0in"&gt;Zombies are big problem of Convoy Orchestrations. See &lt;a title="Title of this entry." href="http://geekswithblogs.net/LeonidGaneline/archive/2011/02/05/biztalk-instance-subscription-details.aspx"&gt;&lt;b&gt;BizTalk: Instance Subscription and Convoys: Details&lt;/b&gt;&lt;/a&gt; article with description of this problem. This problem could be mitigated but could not be completely removed. We are waiting a new version of the BizTalk Server where this issue will be targeted.&lt;/p&gt;&lt;/div&gt;
&lt;h3 style="MARGIN: 10pt 0in 0pt"&gt;&lt;a name="BizTalk_Server_version_Next_Ordered_Delivery_and_Zombies"&gt;&lt;/a&gt;BizTalk Server version Next, Ordered Delivery and Zombies&lt;/h3&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;It is possible the BizTalk Server version Next will implement the automatic Ordered Delivery for Orchestrations, with pattern similar to the Ordered Delivery in Send Ports.&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;Three new Orchestration parameters are shown up there: &lt;b&gt;Ordered Delivery&lt;/b&gt;, &lt;b&gt;Stop on Exception&lt;/b&gt;, and &lt;b&gt;Recycle Interval (in seconds)&lt;/b&gt;&lt;b&gt;.&lt;/b&gt; &lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt; &lt;/p&gt;
&lt;blockquote style="MARGIN-RIGHT: 0px" dir="ltr"&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;&lt;a href="http://social.technet.microsoft.com/wiki/cfs-file.ashx/__key/communityserver-wikis-components-files/00-00-00-00-05/7840.OrchestrationParameters.gif"&gt;&lt;img style="BORDER-BOTTOM: 0px solid; BORDER-LEFT: 0px solid; BORDER-TOP: 0px solid; BORDER-RIGHT: 0px solid" alt="" src="http://social.technet.microsoft.com/wiki/resized-image.ashx/__size/526x467/__key/communityserver-wikis-components-files/00-00-00-00-05/7840.OrchestrationParameters.gif" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;&lt;/blockquote&gt;
&lt;p style="MARGIN: 0in 0in 10pt" dir="ltr"&gt;&lt;strong&gt;Ordered Delivery&lt;/strong&gt; parameter works in the same way as the Ordered Delivery parameter of the Send Port. Now we don’t have to build the Convoy Orchestration manually. No more Loop inside Orchestration. &lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;If the Ordered Delivery parameter set up to True, the Orchestration is working as a Singleton. The first Receive shape receives all correlated messages in sequence. Correlation set is created implicitly regards of the Activation Subscription expression.&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;There are several limitations for this kind of Orchestration. The most important is: only one Receive shape is permitted here.&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;There are two big advantages of this new feature: &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Simplified Orchestration design for the Ordered Delivery. 
&lt;/li&gt;&lt;li&gt;No more Zombies. The Orchestration instance is recycled in controllable way, when no messages, matched the Orchestration Subscription, are placed in the MessageBox. &lt;/li&gt;&lt;/ul&gt;
&lt;h3 style="MARGIN: 10pt 0in 0pt"&gt;&lt;a name="Conclusion"&gt;&lt;/a&gt;Conclusion&lt;/h3&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt;We discussed the Ordered Delivery implemented in the BizTalk Server and ways to improve it.&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt"&gt; &lt;/p&gt; &lt;img src="http://geekswithblogs.net/LeonidGaneline/aggbug/148315.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Leonid Ganeline</dc:creator>
            <guid>http://geekswithblogs.net/LeonidGaneline/archive/2012/01/11/biztalk-ordered-delivery.aspx</guid>
            <pubDate>Wed, 11 Jan 2012 22:34:36 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/LeonidGaneline/comments/148315.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/LeonidGaneline/archive/2012/01/11/biztalk-ordered-delivery.aspx#feedback</comments>
            <slash:comments>5</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/LeonidGaneline/comments/commentRss/148315.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/LeonidGaneline/services/trackbacks/148315.aspx</trackback:ping>
        </item>
        <item>
            <title>BizTalk: Advanced Questions</title>
            <link>http://geekswithblogs.net/LeonidGaneline/archive/2012/01/10/biztalk-advanced-questions.aspx</link>
            <description>&lt;p style="MARGIN: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font face="Calibri"&gt;This article is &lt;/font&gt;&lt;span style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Arial','sans-serif'; COLOR: black; FONT-SIZE: 10pt; mso-ansi-language: EN" lang="EN"&gt;a Part 6 of the Interview Questions series.&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /?&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div style="BORDER-BOTTOM: windowtext 2.25pt double; BORDER-LEFT: medium none; PADDING-BOTTOM: 1pt; PADDING-LEFT: 0in; PADDING-RIGHT: 0in; BORDER-TOP: medium none; BORDER-RIGHT: medium none; PADDING-TOP: 0in; mso-element: para-border-div"&gt;
&lt;p style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 0in; PADDING-RIGHT: 0in; BORDER-TOP: medium none; BORDER-RIGHT: medium none; PADDING-TOP: 0in; mso-padding-alt: 0in 0in 1.0pt 0in; mso-border-bottom-alt: double windowtext 2.25pt"&gt;&lt;span style="FONT-FAMILY: 'Arial','sans-serif'; COLOR: black; FONT-SIZE: 10pt; mso-ansi-language: EN" lang="EN"&gt;Part 1: &lt;a href="http://geekswithblogs.net/LeonidGaneline/archive/2006/05/22/79267.aspx"&gt;&lt;span style="FONT-SIZE: 12pt"&gt;&lt;font color="#ac2c2b"&gt;BizTalk: Questions for interview without answers &lt;/font&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;Part 2: &lt;a href="http://geekswithblogs.net/LeonidGaneline/archive/2007/07/03/113663.aspx"&gt;&lt;span style="FONT-SIZE: 12pt"&gt;&lt;font color="#ac2c2b"&gt;BizTalk: Interview questions and principles &lt;/font&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;Part 3: &lt;a href="http://geekswithblogs.net/LeonidGaneline/archive/2008/01/07/wcf-questions-for-studing-and-interview.aspx"&gt;&lt;span style="FONT-SIZE: 12pt"&gt;&lt;font color="#ac2c2b"&gt;WCF: Questions for studying and interview&lt;/font&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;Part 4: &lt;a href="http://geekswithblogs.net/LeonidGaneline/archive/2011/04/26/wcf-questions-for-studying-and-interview-discovery.aspx"&gt;&lt;span style="FONT-SIZE: 12pt"&gt;WCF: Questions for studying and interview: Discovery&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;Part 5: &lt;a href="http://geekswithblogs.net/LeonidGaneline/archive/2011/06/08/wcf-questions-for-studying-and-interview-routing-service.aspx"&gt;&lt;span style="FONT-SIZE: 12pt"&gt;&lt;font color="#ac2c2b"&gt;WCF: Questions for studying and interview: Routing Service &lt;/font&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;Part 6: &lt;a href="http://geekswithblogs.net/LeonidGaneline/archive/2012/01/10/biztalk-advanced-questions.aspx"&gt;&lt;span style="FONT-SIZE: 12pt"&gt;&lt;font color="#ac2c2b"&gt;BizTalk: Advanced Questions&lt;/font&gt;&lt;/span&gt;&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;&lt;span style="mso-ansi-language: EN" lang="EN"&gt;It is time for fun!&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt" class="MsoNormal"&gt;&lt;span style="mso-ansi-language: EN" lang="EN"&gt;&lt;font face="Calibri"&gt;These questions are for an Advanced level of the BizTalk Developers. I hope you don’t have a single chance to answer these questions, if you don’t have a real life experience in BizTalk Server projects. &lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt" class="MsoNormal"&gt;&lt;span style="mso-ansi-language: EN" lang="EN"&gt;&lt;font face="Calibri"&gt;I would appreciate, if you write the answers in comments to this article. Thanks! &lt;br /&gt;I will mark the questions which got a right/good answer.&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt" class="MsoNormal"&gt;&lt;span style="mso-ansi-language: EN" lang="EN"&gt;&lt;font face="Calibri"&gt;If you have more advanced questions, please, comment them down and I will add them to this list under your name.&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;h2 style="MARGIN: 10pt 0in 0pt"&gt;&lt;font color="#4f81bd" size="4" face="Cambria"&gt;Advanced level&lt;/font&gt;&lt;/h2&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpFirst"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;The error in BizTalk usually creates a suspended message. But routing error creates two messages. Why so? How we could utilize this feature?&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;Send ports have an “Ordered delivery” option. How it works for a File adapter, if the File protocol does not have a notion of file order?&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;Send ports have an “Ordered delivery” option but Receive ports do not have it. Why so?&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;You set up an “Ordered delivery” option in Send Port. What is special about Service Instance of this Port?&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;How to force an Orchestration do the ordered delivery? Is there a special “Ordered delivery” option in Orchestration? If it is not, why?&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;Send ports have the “Priority” options, but Receive ports and Receive Locations do not have them. Why so?&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;How does the Priority feature of the Send Port work?&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;Why the Priority option can be set up only for the Send Port?&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;Send ports have the “Retry” options, but Receive ports and Receive Locations do not have them. Why so?&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;How does the Retry feature of the Send Port work? In what scenarios this feature is helpful, in &lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;Send ports have a “Backup Transport” but Receive ports do not have it. Why so?&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;Send ports have a “Filter” but Receive ports do not have it. Why so?&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;Send ports have the “Maps” and “Transport”; Receive ports have “Maps” but “Transport” is associated with Receive Locations. Why so?&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;What is the difference between “Send Port Group – Send Port” relation and “Receive Port – Receive Location” relation?&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;Receive Location have the Schedule parameters for date and time but Send Ports have the Schedule parameters only time. Why so?&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;Filter expression for the Send Port is defined at run-time, but Filter expression for the Orchestrations is defined only at design-time. Why so?&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;We created a custom pipeline component. Do we have to place it into the “&amp;lt;BizTalkFolder&amp;gt;\Pipeline Component” or install it to GAC or both?&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;How does an Orchestration make sure the message was sent successfully by one-way Send port? How does it changed for a two-way Send port?&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;What is it the “CodeList Database” property of the Schema? How to use it?&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;What is the “Property Schema Base” property of the Property schema element? It has the values: Message&lt;b style="mso-bidi-font-weight: normal"&gt;Data&lt;/b&gt;ProperyBase, Message&lt;b style="mso-bidi-font-weight: normal"&gt;Context&lt;/b&gt;PropertyBase, and &lt;b style="mso-bidi-font-weight: normal"&gt;PartContext&lt;/b&gt;PropertyBase. What is the difference between using MessageDataProperyBase and MessageContextPropertyBase?&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;We bind the Orchestration with Send Port. What does it do regards of the subscription?&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;We bind the Orchestration with Receive Port. What does it do regards of the subscription?&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;How do Filters of the Send Ports and Send Port Groups work together? Say, a Send Port belongs to a Send Port Group. If this Send Port and this Send Port Group have the same Filter expression, does it create two subscriptions and, as a result, two messages are sent to the Send?&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;Why do we need a special Property schema for Promoted properties? What is the purpose of this schema? Distinguished properties do not use this kind of schema. Why so?&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;Properties of some BizTalk artifacts have the Tracking option. Right-click menu of some BizTalk artifacts have the “Tracking…” command. Why there is such a difference between artifacts? Why Maps do not have any Tracking options? Why Schemas have only Tracking property? Why Send Port Groups do not have any Tracking options? Why Receive Locations do not have any Tracking options? Why BizTalk Applications do not have any Tracking options?&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;When the BizTalk Assembly is deployed, is it stored in the BizTalk database or it is just referenced in the BizTalk database?&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;Can you describe at least three scenarios where smart Orchestration Engine finds the errors in the messages patterns at design time (while build the BizTalk project)?&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;font face="Calibri"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;font size="3" face="Calibri"&gt;Host has an "Authentication Trusted" option. What does it mean? What implication it has to the message processing? How do we have to use it / don't use?&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;font face="Calibri"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;&lt;span style="FONT: 7pt 'Times New Roman'"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;Could you create an XLANGMessage in the C#/VB code? Please, provide code.&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;You can use an XmlDocument class as a Message type for receive untyped Xml messages in Orchestration. What .NET classes we have to use for receive untyped text or binary messages in Orchestration. Why so? &lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;Is the Publish-Subscribe BizTalk Engine API well defined? Where? If not, why so?&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;Does BizTalk use the strategy “First&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;received, first processed” or “First received, last processed” of “First received, first processed, first sent” of something else? Why so? &lt;br /&gt;Describe scenarios, when this strategy works better, and scenarios, when this strategy works badly.&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;Are Orchestration Instances processed in order? Why so? Describe scenarios.&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;Is it possible to force Hydration / Dehydration of the Orchestration instances, Messaging instances? How to do this? Why do this?&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;In what scenarios you will use the Compensations in Orchestrations? Why so?&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;Atomic scopes in Orchestrations have a Retry feature. How it works? Describe scenarios when it is used. &lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;What serializer does BizTalk use, XmlSerializer or DataContractSerializer? What implication it has for the real life scenarios? &lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;What transform engine is BizTalk using, XslTransform or XslCompiledTransform? What implication it has for the real life scenarios?&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;BizTalk Business Rule Engine uses a Rete engine inside. In what scenarios this Rete engine is the more efficient / less efficient?&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;Let’s classify the applications as Front-end, Middle-level and Back-end. Where are the best places to use BizTalk? Please, provide scenarios. What are the most important features we have to take in account?&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 10pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpLast"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;What BizTalk features are the differentiators, when you compare BizTalk Server with other alternatives? What are those alternatives?&lt;/font&gt;&lt;/p&gt; &lt;img src="http://geekswithblogs.net/LeonidGaneline/aggbug/148303.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Leonid Ganeline</dc:creator>
            <guid>http://geekswithblogs.net/LeonidGaneline/archive/2012/01/10/biztalk-advanced-questions.aspx</guid>
            <pubDate>Tue, 10 Jan 2012 17:12:21 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/LeonidGaneline/comments/148303.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/LeonidGaneline/archive/2012/01/10/biztalk-advanced-questions.aspx#feedback</comments>
            <slash:comments>5</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/LeonidGaneline/comments/commentRss/148303.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/LeonidGaneline/services/trackbacks/148303.aspx</trackback:ping>
        </item>
        <item>
            <title>BizTalk: Samples: Error Handling, Email Notification</title>
            <link>http://geekswithblogs.net/LeonidGaneline/archive/2012/01/06/biztalk-samples-error-handling-email-notification.aspx</link>
            <description>&lt;p style="MARGIN: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font face="Calibri"&gt;One problem with email notifications is it usually sends too many emails. Errors frequently happen in series. For example, a temporarily issue with network can result in hundreds repetitive emails. In result an email notification designed as a “VIP” notification is downgraded to the “annoying” status.&lt;/font&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font face="Calibri"&gt;This email flooding could be mitigated with this solution.&lt;/font&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font face="Calibri"&gt;A Sample demonstrates using the emails for sending notification in case of failed messages.&lt;/font&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font face="Calibri"&gt;It compounds several similar errors in one email notification.&lt;/font&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt" class="MsoNormal"&gt; &lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font face="Calibri"&gt;Recently I've uploaded this sample &lt;/font&gt;&lt;/p&gt;
&lt;h1&gt;&lt;font size="4"&gt;&lt;a href="http://code.msdn.microsoft.com/BizTalk-Samples-Error-06d134fa"&gt;BizTalk: Samples: ErrorHandling: Notification emails&lt;/a&gt;&lt;/font&gt;&lt;/h1&gt;
&lt;p&gt;to MSDN Gallery. &lt;/p&gt;
&lt;p&gt;It has all solution artifacts and can be used in real-life projects.&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt" class="MsoNormal"&gt; &lt;/p&gt; &lt;img src="http://geekswithblogs.net/LeonidGaneline/aggbug/148261.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Leonid Ganeline</dc:creator>
            <guid>http://geekswithblogs.net/LeonidGaneline/archive/2012/01/06/biztalk-samples-error-handling-email-notification.aspx</guid>
            <pubDate>Fri, 06 Jan 2012 17:49:21 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/LeonidGaneline/comments/148261.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/LeonidGaneline/archive/2012/01/06/biztalk-samples-error-handling-email-notification.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/LeonidGaneline/comments/commentRss/148261.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/LeonidGaneline/services/trackbacks/148261.aspx</trackback:ping>
        </item>
        <item>
            <title>BizTalk: Sample: Error Handling</title>
            <link>http://geekswithblogs.net/LeonidGaneline/archive/2012/01/01/biztalk-sample-error-handling.aspx</link>
            <description>&lt;p&gt;Recently I uploaded a "&lt;a title="BizTalk: Sample: Error Handling" href="http://code.msdn.microsoft.com/BizTalk-Sample-Error-69c099be" target="_blank"&gt;BizTalk: Sample: Error Handling&lt;/a&gt;" in MSDN Gallery&lt;/p&gt;
&lt;p&gt;This sample shows the BizTalk features:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Routing Failed Messages in ports &lt;/li&gt;
&lt;li&gt;Catching Failed Messages with Send Port &lt;/li&gt;
&lt;li&gt;Catching Failed Messages with Orchestration &lt;/li&gt;
&lt;li&gt;Handling Exceptions inside Orchestration &lt;/li&gt;
&lt;li&gt;Handling SOAP Fault messages inside Orchestration &lt;/li&gt;&lt;/ul&gt;
&lt;script src="undefinedbroker-config.js?1325447716114"&gt;&lt;/script&gt; &lt;img src="http://geekswithblogs.net/LeonidGaneline/aggbug/148207.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Leonid Ganeline</dc:creator>
            <guid>http://geekswithblogs.net/LeonidGaneline/archive/2012/01/01/biztalk-sample-error-handling.aspx</guid>
            <pubDate>Sun, 01 Jan 2012 19:57:03 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/LeonidGaneline/comments/148207.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/LeonidGaneline/archive/2012/01/01/biztalk-sample-error-handling.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/LeonidGaneline/comments/commentRss/148207.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/LeonidGaneline/services/trackbacks/148207.aspx</trackback:ping>
        </item>
        <item>
            <title>BizTalk Orchestration Naming Conventions</title>
            <link>http://geekswithblogs.net/LeonidGaneline/archive/2011/12/28/biztalk-orchestration-naming-conventions.aspx</link>
            <description>&lt;h1&gt;&lt;font style="FONT-WEIGHT: normal" size="3"&gt;&lt;a name="_Toc232937397"&gt; &lt;/a&gt;This is a second part of the BizTalk Naming Convention.&lt;/font&gt;&lt;/h1&gt;
&lt;div&gt;&lt;font style="FONT-WEIGHT: normal" size="3"&gt;Part 1: &lt;/font&gt;&lt;a style="TEXT-ALIGN: left; TEXT-TRANSFORM: lowercase; BACKGROUND-COLOR: rgb(249,249,249); FONT-FAMILY: Arial, Verdana, Tahoma; COLOR: rgb(172,44,43); FONT-SIZE: 1.2em; FONT-WEIGHT: bold; TEXT-DECORATION: none" id="viewpost_ascx_TitleUrl" class="singleposttitle" title="Title of this entry." href="http://geekswithblogs.net/LeonidGaneline/archive/2009/07/31/biztalk-naming-convention-for-the-biztalk-solutions.aspx"&gt;biztalk: BizTalk solution naming convention&lt;/a&gt;&lt;/div&gt;
&lt;h1&gt;&lt;a name="_Toc232937397"&gt;Special Orchestration Objects&lt;/a&gt; &lt;/h1&gt;
&lt;h2&gt;&lt;?xml:namespace prefix = o /?&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/h2&gt;
&lt;p class="Syntax"&gt;&amp;lt;Message&amp;gt; =: &lt;br /&gt;&lt;b&gt;&lt;span style="WHITE-SPACE: pre" class="Apple-tab-span"&gt;&lt;/span&gt;      msg_&lt;/b&gt; + &amp;lt;ShortMessageType&amp;gt;&lt;span style="FONT-SIZE: 12pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="Syntax"&gt;&amp;lt;Variable&amp;gt; =: &lt;br /&gt;&lt;b&gt;&lt;span style="WHITE-SPACE: pre" class="Apple-tab-span"&gt;&lt;/span&gt;      var_&lt;/b&gt; + &amp;lt;Name&amp;gt;&lt;span style="FONT-SIZE: 12pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="Syntax"&gt;&amp;lt;CorrelationSet&amp;gt; =: &lt;br /&gt;&lt;b&gt;&lt;span style="WHITE-SPACE: pre" class="Apple-tab-span"&gt;&lt;/span&gt;      cor_&lt;/b&gt; + &amp;lt;Name&amp;gt;&lt;span style="FONT-SIZE: 12pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="Syntax"&gt;&amp;lt;OrchestrationParameter&amp;gt; =: &lt;br /&gt;&lt;b&gt;&lt;span style="WHITE-SPACE: pre" class="Apple-tab-span"&gt;&lt;/span&gt;      par_&lt;/b&gt; + &amp;lt; Name&amp;gt;&lt;span style="FONT-SIZE: 12pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="Syntax"&gt;&amp;lt;RoleLink&amp;gt; =: &lt;br /&gt;&lt;b&gt;&lt;span style="WHITE-SPACE: pre" class="Apple-tab-span"&gt;&lt;/span&gt;      roleLink_&lt;/b&gt; + &amp;lt;Name&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;p class="Note"&gt;&lt;b&gt;Note:&lt;/b&gt; &lt;span class="NoteChar"&gt;These objects are special BizTalk objects. They are used in different language context and sometime they use different language syntax. Prefixes help to differentiate the objects in the XLang expressions. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="Syntax"&gt;&amp;lt;Port&amp;gt; =: &lt;br /&gt;&lt;span style="WHITE-SPACE: pre" class="Apple-tab-span"&gt;&lt;/span&gt;      &amp;lt;prefix&amp;gt; + &amp;lt;Name&amp;gt;&lt;span style="FONT-SIZE: 12pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN-LEFT: 0.5in" class="MsoNormal"&gt;&lt;span style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;where&lt;/span&gt;&lt;span style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table style="BORDER-COLLAPSE: collapse; MARGIN-LEFT: 0.5in; mso-yfti-tbllook: 1184; mso-padding-alt: 0in 0in 0in 0in" class="MsoNormalTable" border="0" cellspacing="0" cellpadding="0"&gt;
&lt;tbody&gt;
&lt;tr style="PAGE-BREAK-INSIDE: avoid; HEIGHT: 34.55pt; mso-yfti-irow: 0; mso-yfti-firstrow: yes"&gt;
&lt;td style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; PADDING-BOTTOM: 0in; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; HEIGHT: 34.55pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in" valign="top"&gt;&lt;/td&gt;
&lt;td style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; HEIGHT: 34.55pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in; mso-border-left-alt: inset #D4D0C8 .75pt" valign="top"&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;Send &lt;/span&gt;&lt;span style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
&lt;td style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; HEIGHT: 34.55pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in; mso-border-left-alt: inset #D4D0C8 .75pt" valign="top"&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;Receive &lt;/span&gt;&lt;span style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
&lt;td style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 5.4pt; WIDTH: 114.25pt; PADDING-RIGHT: 5.4pt; HEIGHT: 34.55pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in; mso-border-left-alt: inset #D4D0C8 .75pt" valign="top" width="152"&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;Send-Receive &lt;br /&gt;(Solicit-Response) &lt;/span&gt;&lt;span style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
&lt;td style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 5.4pt; WIDTH: 139.5pt; PADDING-RIGHT: 5.4pt; HEIGHT: 34.55pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in; mso-border-left-alt: inset #D4D0C8 .75pt" valign="top" width="186"&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;Receive-Send &lt;br /&gt;(Request- Response) &lt;/span&gt;&lt;span style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="PAGE-BREAK-INSIDE: avoid; mso-yfti-irow: 1; mso-yfti-lastrow: yes"&gt;
&lt;td style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; PADDING-BOTTOM: 0in; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in; mso-border-top-alt: inset #D4D0C8 .75pt" valign="top"&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;prefix&lt;/span&gt;&lt;span style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
&lt;td style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in; mso-border-left-alt: inset #D4D0C8 .75pt; mso-border-top-alt: inset #D4D0C8 .75pt" valign="top"&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;S_+&lt;/span&gt;&lt;span style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
&lt;td style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in; mso-border-left-alt: inset #D4D0C8 .75pt; mso-border-top-alt: inset #D4D0C8 .75pt" valign="top"&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;R_+&lt;/span&gt;&lt;span style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
&lt;td style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 5.4pt; WIDTH: 114.25pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in; mso-border-left-alt: inset #D4D0C8 .75pt; mso-border-top-alt: inset #D4D0C8 .75pt" valign="top" width="152"&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;SR_+&lt;/span&gt;&lt;span style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
&lt;td style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 5.4pt; WIDTH: 139.5pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in; mso-border-left-alt: inset #D4D0C8 .75pt; mso-border-top-alt: inset #D4D0C8 .75pt" valign="top" width="186"&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;RS_+&lt;/span&gt;&lt;span style="FONT-FAMILY: 'Verdana','sans-serif'; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;p class="Note"&gt;&lt;b&gt;Notes:&lt;/b&gt;&lt;b&gt;&lt;span style="LINE-HEIGHT: 115%; FONT-SIZE: 12pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div style="TEXT-INDENT: -0.25in; MARGIN-LEFT: 1in; mso-list: l0 level1 lfo1" class="Note"&gt;The Port objects are the only objects which can be seen outside orchestration. We see them while bind orchestration with Ports, not the orchestration Ports but Ports created in the BizTalk Administration Console. Sometimes the orchestration Ports are named as Logical Ports and the Ports as the Physical Ports. &lt;a href="http://geekswithblogs.net/LeonidGaneline/archive/2007/09/27/115663.aspx"&gt;Here&lt;/a&gt; are some considerations about this ambiguity with Port names. &lt;span style="LINE-HEIGHT: 115%; FONT-SIZE: 12pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;&lt;li&gt;
&lt;div style="TEXT-INDENT: -0.25in; MARGIN-LEFT: 1in; mso-list: l0 level1 lfo1" class="Note"&gt;Send-receive prefixes help while Orchestration is binding with Ports. Ports with different Communication pattern are using different prefixes. &lt;span style="LINE-HEIGHT: 115%; FONT-SIZE: 12pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p class="Note"&gt;&lt;b&gt;Example:&lt;/b&gt; S_ OrderAck.&lt;span style="LINE-HEIGHT: 115%; FONT-SIZE: 12pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="Note"&gt;&lt;span style="LINE-HEIGHT: 115%; FONT-SIZE: 12pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;h2&gt;Orchestration Object Types&lt;o:p&gt;&lt;/o:p&gt;&lt;/h2&gt;
&lt;p class="Syntax"&gt;&amp;lt;ArtifactType&amp;gt; =:&lt;br /&gt;      &amp;lt;ArtifactName&amp;gt; + “&lt;b&gt;_type&lt;/b&gt;”&lt;span style="FONT-SIZE: 12pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="Note"&gt;&lt;a name="_Toc232937396"&gt;&lt;b&gt;Note:&lt;/b&gt; We can see orchestration types in the Orchestration View window in Types. They are: Port, Multi-part Message, Correlation and Role Link Types. We can use one suffix the “&lt;b&gt;_type&lt;/b&gt;” for all different types because different types are seen only in the different lists and never mixed. For instance, we can never see the port types together with message types.&lt;o:p&gt;&lt;/o:p&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="Note"&gt;&lt;b&gt;Controversial:&lt;/b&gt;Suffixes for types work better than prefixes, because types are mostly used in the drop-down lists not in the XLang expressions.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;h2&gt;Orchestration Workflow Shapes&lt;o:p&gt;&lt;/o:p&gt;&lt;/h2&gt;
&lt;h3&gt;Problems with orchestration shapes:&lt;span style="LINE-HEIGHT: 115%; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p style="TEXT-INDENT: -0.25in; mso-list: l2 level1 lfo2" class="MsoListParagraphCxSpFirst"&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style="LINE-HEIGHT: 115%; TEXT-INDENT: -0.25in; FONT-FAMILY: Symbol; FONT-SIZE: 12pt"&gt;&lt;span style="FONT: 7pt 'Times New Roman'"&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span style="TEXT-INDENT: -0.25in"&gt;Shapes are too small to display long names (only 12-18 characters are visible).&lt;/span&gt; 
&lt;/li&gt;&lt;li&gt;&lt;span style="LINE-HEIGHT: 115%; TEXT-INDENT: -0.25in; FONT-FAMILY: Symbol; FONT-SIZE: 12pt"&gt;&lt;span style="FONT: 7pt 'Times New Roman'"&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span style="TEXT-INDENT: -0.25in"&gt;We have to hover a mouse over a shape or click shape to see Properties window and to "understand" this shape, to understand which message is processed.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;h3&gt;Useful features:&lt;span style="LINE-HEIGHT: 115%; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p style="TEXT-INDENT: -0.25in; mso-list: l1 level1 lfo3" class="MsoListParagraphCxSpFirst"&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style="LINE-HEIGHT: 115%; TEXT-INDENT: -0.25in; FONT-FAMILY: Symbol; FONT-SIZE: 12pt"&gt;&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;span style="TEXT-INDENT: -0.25in"&gt;Shapes have names, but names are not the “variable names”, not identifiers. They are descriptions (excluding the Port shapes names, which have not Name parameter but Identifier and Description parameters). Shape names are used only for description not as XLang variable identifiers. Shape names can be long and can include any symbols as spaces, dots, etc.&lt;/span&gt; 
&lt;/li&gt;&lt;li&gt;&lt;span style="LINE-HEIGHT: 115%; TEXT-INDENT: -0.25in; FONT-FAMILY: Symbol; FONT-SIZE: 12pt"&gt;&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;span style="TEXT-INDENT: -0.25in"&gt;Icons of shapes give us the useful information. Do not repeat the “icon information” by words. For example, we can a name a Construction shape as “Construct OrderAck” or as “OrderAck”. Last variant give us more clear and short definition because we have the Construction icon + name.&lt;/span&gt; 
&lt;/li&gt;&lt;li&gt;&lt;span style="LINE-HEIGHT: 115%; TEXT-INDENT: -0.25in; FONT-FAMILY: Symbol; FONT-SIZE: 12pt"&gt;&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;span style="TEXT-INDENT: -0.25in"&gt;Shape names are used mainly in Orchestration Editor (excluding the Port shapes names). We don’t need the “well-sorted” names, so we don’t need to use prefixes, because the main purpose of the prefixes is creating well-sorted lists.&lt;/span&gt; 
&lt;/li&gt;&lt;li&gt;&lt;span style="LINE-HEIGHT: 115%; TEXT-INDENT: -0.25in; FONT-FAMILY: Symbol; FONT-SIZE: 12pt"&gt;&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;span style="TEXT-INDENT: -0.25in"&gt;Group shape is a scalable shape. Nesting other shapes to a Group shape can make a long description visible. Group shape will display as much text as you want. Group shapes add a lot of documentation value to the orchestration.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;h3&gt;Rules for shapes&lt;span style="LINE-HEIGHT: 115%; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p style="TEXT-INDENT: -0.25in; mso-list: l3 level1 lfo4" class="MsoListParagraphCxSpFirst"&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style="TEXT-INDENT: -0.25in; FONT-FAMILY: Symbol"&gt;&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;span style="TEXT-INDENT: -0.25in"&gt;Whenever it is possible use the short MessageType as a shape name.&lt;/span&gt; 
&lt;/li&gt;&lt;li&gt;&lt;span style="LINE-HEIGHT: 115%; TEXT-INDENT: -0.25in; FONT-FAMILY: Symbol; FONT-SIZE: 12pt"&gt;&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;span style="TEXT-INDENT: -0.25in"&gt;Do not repeat a type of shape icon by word.&lt;/span&gt; 
&lt;/li&gt;&lt;li&gt;&lt;span style="LINE-HEIGHT: 115%; TEXT-INDENT: -0.25in; FONT-FAMILY: Symbol; FONT-SIZE: 12pt"&gt;&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;span style="TEXT-INDENT: -0.25in"&gt;Feel free to use spaces and any other symbols inside the shape names.&lt;/span&gt; 
&lt;/li&gt;&lt;li&gt;&lt;span style="LINE-HEIGHT: 115%; TEXT-INDENT: -0.25in; FONT-FAMILY: Symbol; FONT-SIZE: 12pt"&gt;&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;span style="TEXT-INDENT: -0.25in"&gt;Feel free to repeat the shape names.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p class="Note"&gt;&lt;b&gt;Note:&lt;/b&gt; Purpose of the orchestration and the most of the shapes is in &lt;strong&gt;processing the messages&lt;/strong&gt;. We can unambiguously describe the messages by the message type. A message type gives us the main information about a message. That is why in the most cases using the message type as the shape name gives us the main information about message flow, about the whole orchestration processing.&lt;br /&gt;&lt;strong&gt;Example&lt;/strong&gt;: Send shape with name "OrderAck" means “send OrderAck message”.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;p class="Note"&gt;&lt;b&gt;Controversial:&lt;/b&gt; &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div class="Note"&gt;Orchestration Naming Convetion works not to make easier the administration and troubleshooting but mostly to make orchestration more readable. Most orchestration names are not visible outside the Orchestration Editor. So, do not force the orchestration naming convention to hard! If your developers use differen conventions, it is fine; of course, if they understand each other. Forcing convention can do more harm than help. It can force team to spend more effort for a little.&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div class="Note"&gt;When exception is thrown from a shape, the error description includes a name of the shape. It is a rare case when names are exposed outside of the Orchestration Editor. When we use MessageType as a name of shapes, many shapes can get the same name. So, if we want to differentiate shape names for debugging purpose, we could use numbers or single letters in the end of names. &lt;br /&gt;&lt;strong&gt;Example&lt;/strong&gt;: “OrderAck 2”&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt; &lt;img src="http://geekswithblogs.net/LeonidGaneline/aggbug/148164.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Leonid Ganeline</dc:creator>
            <guid>http://geekswithblogs.net/LeonidGaneline/archive/2011/12/28/biztalk-orchestration-naming-conventions.aspx</guid>
            <pubDate>Wed, 28 Dec 2011 20:38:39 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/LeonidGaneline/comments/148164.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/LeonidGaneline/archive/2011/12/28/biztalk-orchestration-naming-conventions.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/LeonidGaneline/comments/commentRss/148164.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/LeonidGaneline/services/trackbacks/148164.aspx</trackback:ping>
        </item>
        <item>
            <title>BizTalk: Sample: PGP Encryption/Decryption Pipeline Components</title>
            <link>http://geekswithblogs.net/LeonidGaneline/archive/2011/12/25/biztalk-sample-pgp-encryptiondecryption-pipeline-components.aspx</link>
            <description>&lt;h1 style="MARGIN: 24pt 0in 0pt"&gt;&lt;span style="FONT-FAMILY: 'Calibri','sans-serif'; FONT-SIZE: 11pt; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi"&gt;A sample demonstrates the PGP Encryption/Decryption in pipelines. &lt;br /&gt;&lt;/span&gt;&lt;/h1&gt;&lt;pre&gt;&lt;span style="FONT-FAMILY: 'Calibri','sans-serif'; FONT-SIZE: 11pt; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi"&gt;You can &lt;a href="http://code.msdn.microsoft.com/BizTalk-Sample-PGP-ebcbc8b2"&gt;download code here&lt;/a&gt;.&lt;/span&gt;
		&lt;/pre&gt;&lt;pre&gt;&lt;span style="FONT-FAMILY: 'Calibri','sans-serif'; FONT-SIZE: 11pt; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi"&gt;A sample is based on a sample by&lt;a href="http://bajwork.blogspot.com/2007/08/pgp-pipeline-component-v11.html " temp_href="http://bajwork.blogspot.com/2007/08/pgp-pipeline-component-v11.html "&gt; Brian Jones&lt;/a&gt; See &lt;a href="http://209.40.205.14/wp-content/uploads/2009/07/PGP.zip " temp_href="http://209.40.205.14/wp-content/uploads/2009/07/PGP.zip "&gt;original code here&lt;/a&gt;&lt;/span&gt;
		&lt;/pre&gt;
&lt;p style="MARGIN: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font face="Calibri"&gt;The main additions to original code:&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /?&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt; &lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l4 level1 lfo1" class="MsoListParagraphCxSpFirst"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;Single pipeline component was separated to two Encrypt and Decrypt pipeline components. It simplifies the pipeline configurations.&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt; &lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l4 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;Configuration parameters are stored in SSO, which, I hope, improves security.&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt; &lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 10pt 0.5in; mso-list: l4 level1 lfo1" class="MsoListParagraphCxSpLast"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;File names for temporary files are regenerated randomly each time. That eliminates errors in case when temporary file names are based on the inbound file names and pipelines are working simultaneously in several ports. &lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font face="Calibri"&gt;To build pipeline components you have to download a BouncyCastle.Crypto.dll assembly from &lt;/font&gt;&lt;a href="http://www.bouncycastle.org/csharp"&gt;&lt;font color="#0000ff" face="Calibri"&gt;http://www.bouncycastle.org/csharp&lt;/font&gt; &lt;/a&gt;&lt;font face="Calibri"&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt; &lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font face="Calibri"&gt;The solution includes two pairs of the PGP keys. You can generate yours pairs using, for example, &lt;b style="mso-bidi-font-weight: normal"&gt;PortablePGP&lt;/b&gt; utility &lt;/font&gt;&lt;a href="http://primianotucci.com/"&gt;&lt;font color="#0000ff" face="Calibri"&gt;http://primianotucci.com&lt;/font&gt; &lt;/a&gt;&lt;font face="Calibri"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font face="Calibri"&gt;Configuration includes a config file for a &lt;a href="http://seroter.wordpress.com/2007/09/21/biztalk-sso-configuration-data-storage-tool/ " temp_href="http://seroter.wordpress.com/2007/09/21/biztalk-sso-configuration-data-storage-tool/ "&gt;&lt;b style="mso-bidi-font-weight: normal"&gt;SSO Config Store&lt;/b&gt; utility&lt;/a&gt; created by Richard Seroter. &lt;/font&gt;&lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font face="Calibri"&gt;The test pipeline project includes four pipelines:&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt; &lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l2 level1 lfo2" class="MsoListParagraphCxSpFirst"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;Send and Receive pipelines for Encryption&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt; &lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 10pt 0.5in; mso-list: l2 level1 lfo2" class="MsoListParagraphCxSpLast"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;Send and Receive pipelines for Decryption.&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt; &lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font face="Calibri"&gt;To test these pipelines I’ve created four receive ports and four send ports. They create four test workflows:&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt; &lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l3 level1 lfo3" class="MsoListParagraphCxSpFirst"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;&lt;b style="mso-bidi-font-weight: normal"&gt;Encryption on a Receive port:&lt;br /&gt;&lt;/b&gt;RP::GLD.Samples.Pipelines.Encrypt.Encode &lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;( &lt;b style="mso-bidi-font-weight: normal"&gt;PgpEncryptReceive&lt;/b&gt; pipeline )&lt;br /&gt;&lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;&lt;/font&gt; &lt;span style="FONT-FAMILY: Wingdings; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri; mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;&lt;span style="mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;è&lt;/span&gt; &lt;/span&gt;&lt;font face="Calibri"&gt;SP:: GLD.Samples.Pipelines.Encrypt.PassThru&lt;br style="mso-special-character: line-break" /&gt;&lt;br style="mso-special-character: line-break" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l3 level1 lfo3" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;&lt;b style="mso-bidi-font-weight: normal"&gt;Encryption on a Send port:&lt;br /&gt;&lt;/b&gt;RP::GLD.Samples.Pipelines.Encrypt.PassThru &lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;&lt;/font&gt; &lt;span style="FONT-FAMILY: Wingdings; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri; mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;&lt;span style="mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;è&lt;/span&gt; &lt;/span&gt;&lt;font face="Calibri"&gt;SP:: GLD.Samples.Pipelines.Encrypt.Encode ( &lt;b style="mso-bidi-font-weight: normal"&gt;PgpEncryptSend&lt;/b&gt; pipeline )&lt;br style="mso-special-character: line-break" /&gt;&lt;br style="mso-special-character: line-break" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l3 level1 lfo3" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;&lt;b style="mso-bidi-font-weight: normal"&gt;Decryption on a Receive port:&lt;br /&gt;&lt;/b&gt;RP:: GLD.Samples.Pipelines.Decrypt.Decode ( &lt;b style="mso-bidi-font-weight: normal"&gt;PgpDecryptReceive&lt;/b&gt; pipeline )&lt;br /&gt;&lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;&lt;/font&gt; &lt;span style="FONT-FAMILY: Wingdings; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri; mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;&lt;span style="mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;è&lt;/span&gt; &lt;/span&gt;&lt;font face="Calibri"&gt;SP:: GLD.Samples.Pipelines.Decrypt.PassThru&lt;br style="mso-special-character: line-break" /&gt;&lt;br style="mso-special-character: line-break" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 10pt 0.5in; mso-list: l3 level1 lfo3" class="MsoListParagraphCxSpLast"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;&lt;b style="mso-bidi-font-weight: normal"&gt;Decryption on a Send port:&lt;br /&gt;&lt;/b&gt;RP:: GLD.Samples.Pipelines.Decrypt.PassThru &lt;br /&gt;&lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;&lt;/font&gt; &lt;span style="FONT-FAMILY: Wingdings; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri; mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;&lt;span style="mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;è&lt;/span&gt; &lt;/span&gt;&lt;font face="Calibri"&gt;SP:: GLD.Samples.Pipelines.Decrypt.Decrypt ( &lt;b style="mso-bidi-font-weight: normal"&gt;PgpDecryptSend&lt;/b&gt; pipeline )&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt; &lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt" class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight: normal"&gt;&lt;font face="Calibri"&gt;To test pipelines:&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt; &lt;/b&gt;&lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l1 level1 lfo4" class="MsoListParagraphCxSpFirst"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;Use test text files in a &lt;b style="mso-bidi-font-weight: normal"&gt;Tests\TestData&lt;/b&gt; folder&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt; &lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l1 level1 lfo4" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;To &lt;b style="mso-bidi-font-weight: normal"&gt;test encryption&lt;/b&gt;:&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt; &lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1in; mso-list: l0 level1 lfo5; mso-add-space: auto" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"&gt;&lt;span style="mso-list: Ignore"&gt;&lt;font face="Calibri"&gt;1.&lt;/font&gt; &lt;span style="FONT: 7pt 'Times New Roman'"&gt;       &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;Copy test files to a &lt;b style="mso-bidi-font-weight: normal"&gt;Tests\Encrypt\In&lt;/b&gt; folder&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt; &lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1in; mso-list: l0 level1 lfo5; mso-add-space: auto" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"&gt;&lt;span style="mso-list: Ignore"&gt;&lt;font face="Calibri"&gt;2.&lt;/font&gt; &lt;span style="FONT: 7pt 'Times New Roman'"&gt;       &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;Encrypted files are created in a &lt;b style="mso-bidi-font-weight: normal"&gt;Test\Encrypt\Out&lt;/b&gt; folder.&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt; &lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l1 level1 lfo4" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;span style="mso-list: Ignore"&gt;·&lt;span style="FONT: 7pt 'Times New Roman'"&gt;         &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;To &lt;b style="mso-bidi-font-weight: normal"&gt;test decryption&lt;/b&gt;:&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt; &lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1in; mso-list: l0 level1 lfo5; mso-add-space: auto" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"&gt;&lt;span style="mso-list: Ignore"&gt;&lt;font face="Calibri"&gt;3.&lt;/font&gt; &lt;span style="FONT: 7pt 'Times New Roman'"&gt;       &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;Copy test encrypted files from a &lt;b style="mso-bidi-font-weight: normal"&gt;Test\Encrypt\Out&lt;/b&gt; folder to a &lt;b style="mso-bidi-font-weight: normal"&gt;Tests\Decrypt\In&lt;/b&gt; folder&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt; &lt;/p&gt;
&lt;p style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1in; mso-list: l0 level1 lfo5; mso-add-space: auto" class="MsoListParagraphCxSpMiddle"&gt;&lt;span style="mso-bidi-font-family: Calibri; mso-bidi-theme-font: minor-latin"&gt;&lt;span style="mso-list: Ignore"&gt;&lt;font face="Calibri"&gt;4.&lt;/font&gt; &lt;span style="FONT: 7pt 'Times New Roman'"&gt;       &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri"&gt;Decrypted files are created in a &lt;b style="mso-bidi-font-weight: normal"&gt;Test\Decrypt\Out&lt;/b&gt; folder.&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt; &lt;/p&gt;
&lt;p style="MARGIN: 0in 0in 10pt 1in; mso-add-space: auto" class="MsoListParagraphCxSpLast"&gt;&lt;o:p&gt;&lt;font face="Calibri"&gt; &lt;/font&gt; &lt;/o:p&gt;&lt;/p&gt; &lt;img src="http://geekswithblogs.net/LeonidGaneline/aggbug/148140.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Leonid Ganeline</dc:creator>
            <guid>http://geekswithblogs.net/LeonidGaneline/archive/2011/12/25/biztalk-sample-pgp-encryptiondecryption-pipeline-components.aspx</guid>
            <pubDate>Mon, 26 Dec 2011 04:47:03 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/LeonidGaneline/comments/148140.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/LeonidGaneline/archive/2011/12/25/biztalk-sample-pgp-encryptiondecryption-pipeline-components.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/LeonidGaneline/comments/commentRss/148140.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/LeonidGaneline/services/trackbacks/148140.aspx</trackback:ping>
        </item>
        <item>
            <title>BizTalk and WCF adapters: Operation and SOAP Action</title>
            <link>http://geekswithblogs.net/LeonidGaneline/archive/2011/12/21/biztalk-and-wcf-adapters-operation-and-soap-action.aspx</link>
            <description>
		&lt;p&gt;One area here is not so well documented. &lt;/p&gt;
		&lt;p&gt;
				&lt;img alt="" src="http://ganeline.files.wordpress.com/2011/12/wcf-transportproperties-general.jpg" /&gt;
		&lt;/p&gt;
		&lt;p&gt;When we are filling in the Transport properties for WCF adapter, we see the &lt;b&gt;SOAP Action header&lt;/b&gt; section. &lt;/p&gt;
		&lt;p&gt;What is it? Where we could take the values for Operations and Actions?&lt;/p&gt;
		&lt;p&gt;If we use the &lt;b&gt;Consume WCF Service&lt;/b&gt; wizard, this section is filled up automatically. But sometimes we have to fill it in manually.&lt;/p&gt;
		&lt;p&gt;NP&lt;/p&gt;
		&lt;p&gt;Open a WSDL for the Web-service and search for a &lt;b&gt;binding&lt;/b&gt; section. If you add the “?wsdl” to the Web-service URL, usually the Web-service WSDL is opened.&lt;/p&gt;
		&lt;p&gt;That’s how operations and actions in the WCF parameters and WSDL are mapping:&lt;/p&gt;
		&lt;p&gt;
				&lt;img alt="" src="http://ganeline.files.wordpress.com/2011/12/btsactionmapping-xml-and-soapactionheader.jpg" /&gt;
		&lt;/p&gt;
		&lt;p&gt;Hope it helps.&lt;/p&gt;
 &lt;img src="http://geekswithblogs.net/LeonidGaneline/aggbug/148101.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Leonid Ganeline</dc:creator>
            <guid>http://geekswithblogs.net/LeonidGaneline/archive/2011/12/21/biztalk-and-wcf-adapters-operation-and-soap-action.aspx</guid>
            <pubDate>Wed, 21 Dec 2011 22:53:19 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/LeonidGaneline/comments/148101.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/LeonidGaneline/archive/2011/12/21/biztalk-and-wcf-adapters-operation-and-soap-action.aspx#feedback</comments>
            <slash:comments>4</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/LeonidGaneline/comments/commentRss/148101.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/LeonidGaneline/services/trackbacks/148101.aspx</trackback:ping>
        </item>
        <item>
            <title>Microsoft 2011 MVP Global Summit: Pictures</title>
            <link>http://geekswithblogs.net/LeonidGaneline/archive/2011/03/10/microsoft-2011-mvp-global-summit-pictures.aspx</link>
            <description>&lt;p&gt;Photos from Summit&lt;/p&gt;
&lt;p&gt;Mighty Canada&lt;/p&gt;
&lt;p&gt;&lt;img alt="Mighty Canada" src="http://images55.fotki.com/v507/photos/1/31551/9570789/_DSC1962-vi.jpg" /&gt;&lt;/p&gt;
&lt;p&gt;Oh, Canada!&lt;/p&gt;
&lt;p&gt;&lt;img alt="Oh, Canada!" src="http://images59.fotki.com/v111/photos/1/31551/9570789/_DSC1978-vi.jpg" /&gt;&lt;/p&gt;
&lt;p&gt;Microsoft is hearing you, guys.&lt;/p&gt;
&lt;p&gt;&lt;img alt="Microsoft is hearing you, guys." src="http://images57.fotki.com/v283/photos/1/31551/9570789/_DSC2013-vi.jpg" /&gt;&lt;/p&gt;
&lt;p&gt;New Zealand is here.&lt;/p&gt;
&lt;p&gt;&lt;img alt="New Zealand is here." src="http://images54.fotki.com/v1614/photos/1/31551/9570789/_DSC2049-vi.jpg" /&gt;&lt;/p&gt;
&lt;p&gt;Portugal and Brazil are here...&lt;/p&gt;
&lt;p&gt;&lt;img alt="Portugal and Brazil are here" src="http://images53.fotki.com/v536/photos/1/31551/9570789/_DSC2074-vi.jpg" /&gt;&lt;/p&gt;
&lt;p&gt;France is here...&lt;/p&gt;
&lt;p&gt;&lt;img alt="France is here..." src="http://images42.fotki.com/v1377/photos/1/31551/9570789/_DSC2078-vi.jpg" /&gt;&lt;/p&gt;
&lt;p&gt;Netherlands is here...&lt;/p&gt;
&lt;p&gt;&lt;img alt="Netherlands is here..." src="http://images107.fotki.com/v159/photos/1/31551/9570789/_DSC2081-vi.jpg" /&gt;&lt;/p&gt;
&lt;p&gt;all BizTalkiens&lt;/p&gt;
&lt;p&gt;&lt;img alt="all BizTalkiens " src="http://images46.fotki.com/v1413/photos/1/31551/9570789/_DSC2108-vi.jpg" /&gt;&lt;/p&gt;
&lt;p&gt;and the whole world is here...&lt;/p&gt;
&lt;p&gt;[&lt;a href="http://public.fotki.com/leogan/cities_and_countries/usa/2011-microsoft-mvp-/"&gt;See more MVP-s&lt;/a&gt;]&lt;/p&gt;
&lt;p&gt;Vsem privet!&lt;/p&gt;
&lt;p&gt; &lt;/p&gt; &lt;img src="http://geekswithblogs.net/LeonidGaneline/aggbug/144308.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Leonid Ganeline</dc:creator>
            <guid>http://geekswithblogs.net/LeonidGaneline/archive/2011/03/10/microsoft-2011-mvp-global-summit-pictures.aspx</guid>
            <pubDate>Fri, 11 Mar 2011 05:19:20 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/LeonidGaneline/comments/144308.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/LeonidGaneline/archive/2011/03/10/microsoft-2011-mvp-global-summit-pictures.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/LeonidGaneline/comments/commentRss/144308.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/LeonidGaneline/services/trackbacks/144308.aspx</trackback:ping>
        </item>
    </channel>
</rss>
