<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:atom="https://www.w3.org/2005/Atom" xmlns:sy="https://purl.org/rss/1.0/modules/syndication/" xmlns:dc="https://purl.org/dc/elements/1.1/" xmlns:content="https://purl.org/rss/1.0/modules/content/" xmlns:wfw="https://wellformedweb.org/CommentAPI/" xmlns:slash="https://purl.org/rss/1.0/modules/slash/"
  version="2.0">
  <channel>
    <title>BizIntegration</title>
    <atom:link
      href="https://docs.microsoft.com/archive/blogs/bizintegration1/feed.xml"
      rel="self"
      type="application/rss+xml" />
    <link>https://docs.microsoft.com/archive/blogs/bizintegration1/feed.xml</link>
    <description />
    <lastBuildDate>Wed, 17 Apr 2019 03:19:03 GMT</lastBuildDate>
    <language>en-US</language>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>1</sy:updateFrequency>
    <item>
      <title>Quick troubleshooting in configuring ESB Management Portal ( 2.1) on Biztalk Server 2010</title>
      <link>https://docs.microsoft.com/archive/blogs/bizintegration1/quick-troubleshooting-in-configuring-esb-management-portal-2-1-on-biztalk-server-2010</link>
      <pubDate>Tue, 30 Apr 2013 00:12:00 GMT</pubDate>
      <dc:creator><![CDATA[Amit Shukla MSFT]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/bizintegration1/2013/04/30/quick-troubleshooting-in-configuring-esb-management-portal-2-1-on-biztalk-server-2010/</guid>
      <description><![CDATA[While the new &nbsp;release of Biztalk Server 2013 has a much better support for ESB Toolkit...]]></description>
      <content:encoded><![CDATA[<p>While the new &nbsp;release of Biztalk Server 2013 has a much better support for ESB Toolkit Installation / Configuration, a lot of us might still be grappling with the configuration of &nbsp;ESB&nbsp;Toolkit&nbsp;2.1 on&nbsp;Biztalk&nbsp;Server 2010 and more&nbsp;specifically&nbsp;with the ESB Portal.</p>
<p>Here is a quick run through to the most common error(s) &nbsp;you might face and resolution for the same.</p>
<p>&nbsp;</p>
<h4><strong><em>1.Unable to load assembly "System.Web.DataVisualization" </em>while building the ESB Portal</strong></h4>
<p>&nbsp;</p>
<p><strong>[Resolution]</strong> : Ensure that you have the Microsoft Chart Controls ( version 3.5 ) installed on your system by either verifying it from "Add / Remove Programs - Run APPWIZ.CPL" or simply checking the GAC for the presence of the&nbsp;missing assembly. If not install it from <a title="MS Chart Controls 3.5" href="https://www.microsoft.com/en-in/download/details.aspx?id=14422">MS Chart Controls 3.</a></p>
<p>Installing&nbsp;this would&nbsp;ensure&nbsp;that you have the requires assemblies (&nbsp;containing&nbsp;ASP.NET and Windows Forms Chart Controls) on your system, which the ESB Portal have a dependency on.</p>
<h4><em><strong>2."ESB Portal Error Information -&nbsp;UnHandled&nbsp;Exception" while browsing the ESBPortal</strong></em></h4>
<p>&nbsp;</p>
<p>&nbsp;<strong><span class="Apple-tab-span">[Resolution] : </span></strong>This could happen for a variety of reasons and the best way to troubleshoot is to m&nbsp;manually&nbsp;the following sites which are being accesses from within the ESB portal</p>
<div>
<p style="padding-left: 30px;">https://localhot/ESB.ItineraryServices.WCF/ProcessItinerary.svc</p>
<p style="padding-left: 30px;">https://localhost/ESB.BAM.Service/BAMService.svc</p>
<p style="padding-left: 30px;">https://localhost/ESB.Exceptions.Service/ExceptionService.svc</p>
<p style="padding-left: 30px;">You might see the below errors while browsing the dependent WCF services</p>
&nbsp;
<p style="padding-left: 30px;"><strong>Receive location for address "/ESB.ItineraryServices.WCF/ProcessItinerary.svc" not found. (The Biztalk receive location may be disabled.)<br /></strong></p>
<p style="padding-left: 30px;"><strong>[Resolution a] : </strong>Enable the appropriate Biztalk Receive Location(s) within the Microsoft.Practices.ESB Application.</p>
&nbsp;
<p style="padding-left: 30px;"><strong>The requested content appears to be script and will not be served by the static file handler</strong></p>
<p style="padding-left: 30px;"><strong>[Resolution b] :</strong>In command prompt, navigate to %windir%\Microsoft .NET\Framework\v3.0\Windows Communication Foundation\ directory, and run the following command</p>
<p style="padding-left: 30px;"><strong><em>ServiceModelReg.exe -r -y</em></strong></p>
<p style="padding-left: 30px;">This will ensure that WCF stack is fully installed and navigate to %windir%\Microsoft .NET\Framework\v4.0.30319\ and run <em><strong>aspnet_regiis &ndash;iru</strong></em></p>
&nbsp;
<p style="padding-left: 30px;"><strong>Could not load type 'System.ServiceModel.Activation.HttpModule' from assembly 'System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</strong></p>
<p style="padding-left: 30px;"><strong>[Resolution c]</strong> : Navigate to %windir%\Microsoft .NET\Framework\v4.0.30319\ and run <em><strong>aspnet_regiis &ndash;iru</strong></em></p>
<pre style="padding-left: 30px;"><em><strong><br /></strong></em></pre>
<p><em>Hope this would help you save some time...</em></p>
</div>]]></content:encoded>
    </item>
    <item>
      <title>BizTalk Server 2013 Beta</title>
      <link>https://docs.microsoft.com/archive/blogs/bizintegration1/biztalk-server-2013-beta</link>
      <pubDate>Tue, 06 Nov 2012 02:02:36 GMT</pubDate>
      <dc:creator><![CDATA[Amit Shukla MSFT]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/bizintegration1/2012/11/06/biztalk-server-2013-beta/</guid>
      <description><![CDATA[BizTalk Server 2013 Beta has been released.
Check this...]]></description>
      <content:encoded><![CDATA[<p>BizTalk Server 2013 Beta has been released.</p>
<p>Check this out-&nbsp;<a href="https://www.microsoft.com/en-us/download/details.aspx?id=35553">https://www.microsoft.com/en-us/download/details.aspx?id=35553</a></p>]]></content:encoded>
    </item>
    <item>
      <title>Next version of BizTalk Server ( 2010 R2 ) ready for TAP</title>
      <link>https://docs.microsoft.com/archive/blogs/bizintegration1/next-version-of-biztalk-server-2010-r2-ready-for-tap</link>
      <pubDate>Sun, 24 Jun 2012 06:39:00 GMT</pubDate>
      <dc:creator><![CDATA[Amit Shukla MSFT]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/bizintegration1/2012/06/24/next-version-of-biztalk-server-2010-r2-ready-for-tap/</guid>
      <description><![CDATA[Hello
We have an official word from the BizTalk Product team for the BizTalk Server 2010 R2 TAP...]]></description>
      <content:encoded><![CDATA[<p>Hello</p>
<p>We have an official word from the BizTalk Product team for the BizTalk Server 2010 R2 TAP program.</p>
<p>BizTalk Server is Microsoft&rsquo;s premier Integration and business to business communications server offering. This Technology Adoption Program (TAP) is for BizTalk Server 2010 R2, the 8th BizTalk Server release from Microsoft.</p>
<p>Please have your customers, partners and other prospective program participants fill out the nomination survey at:</p>
<p><a href="https://connect.microsoft.com/Azure/Survey/Survey.aspx?SurveyID=14401">https://connect.microsoft.com/Azure/Survey/Survey.aspx?SurveyID=14401</a></p>
<p>BizTalk Server 2010 R2 delivers enhancements in the following feature categories:</p>
<ul>
<li>Electronic Data Interchange</li>
</ul>
<ul>
<ul>
<li>Updated standards support</li>
<li>IaaS offering</li>
</ul>
<li>Messaging</li>
<ul>
<li>Ordered delivery enhancements</li>
<li>HL7 standards update</li>
</ul>
<li>Enhanced Visual Studio 2012, SQL Service 2012, Systems Center 2012 experience</li>
<li>Support for SQL Server 2012 High Availability</li>
<li>Integration with Windows Azure Service Bus and Workflow</li>
<li>Addition of REST adaptor for integrating with Restful endpoints</li>
<li>BizTalk Server Cloud IaaS offering for development and test scenarios</li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>No suspended service instances / errors while working with WCF based Receive Locations</title>
      <link>https://docs.microsoft.com/archive/blogs/bizintegration1/no-suspended-service-instances-errors-while-working-with-wcf-based-receive-locations</link>
      <pubDate>Mon, 05 Mar 2012 13:00:00 GMT</pubDate>
      <dc:creator><![CDATA[Amit Shukla MSFT]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/bizintegration1/2012/03/05/no-suspended-service-instances-errors-while-working-with-wcf-based-receive-locations/</guid>
      <description><![CDATA[Hi
While more often than not , we always look for ensuring that no error comes up while running our...]]></description>
      <content:encoded><![CDATA[<p>Hi</p>
<p>While more often than not , we always look for ensuring that no error comes up while running our scenarios but sometimes and as what happened in this particular instance ,in spite of inducing an erroneous condition to get my ESB Exception Send ports working I was not able to produce the error and soon I realized why.</p>
<p>I'll not get into what my scenario was since the reason behind writing this post has more to do with the this particular configuration setting in BizTalk WCF receive lcoations than anything else.</p>
<p>Whenever we publish our Schema's or Orchestrations WCF service , we always have a choice of creating a Receive Location with a particular type - WCF-basicHttp , WCF - Custom , WCF-WSHttp and so on.</p>
<p>&nbsp;</p>
<p>As we see in this snap shot ,</p>
<p>We have got a property <strong>"</strong><span style="text-decoration: underline;"><strong>Suspend Request Message on failure</strong></span><strong>"</strong> - <em>As the name implies , for whatever reason if the Request message is found to be erroneous by BizTalk , we have been given a option whether we would like that message to be suspended ( and available for subscribing to...) or not</em>.</p>
<p>In a similar manner , if you want to have a control on whether the error details should be visible inside the failed Service instance , you have&nbsp; a property&nbsp;available&nbsp;for that too - <strong>"</strong><span style="text-decoration: underline;"><strong>Include exception details in Faults</strong></span><strong>"</strong></p>
<p>&nbsp;</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/44/13/5228.WCF%20Receive%20Location.JPG" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-44-13/5228.WCF-Receive-Location.JPG"><img border="0" alt="" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/44/13/5228.WCF%20Receive%20Location.JPG" original-url="https://blogs.msdn.com/resized-image.ashx/__size/425x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-44-13/5228.WCF-Receive-Location.JPG" /></a></p>
<p>So just go ahead and enable this property and you will have your errors visible and available for subscription in&nbsp; the form of suspended service instances.</p>]]></content:encoded>
    </item>
    <item>
      <title>ESB 2.1 : Dynamically setting up the EndPointInfo for WCF Sqlbinding in Business Rules Engine (BRE)</title>
      <link>https://docs.microsoft.com/archive/blogs/bizintegration1/esb-2-1-dynamically-setting-up-the-endpointinfo-for-wcf-sqlbinding-in-business-rules-engine-bre</link>
      <pubDate>Fri, 02 Mar 2012 02:51:00 GMT</pubDate>
      <dc:creator><![CDATA[Amit Shukla MSFT]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/bizintegration1/2012/03/02/esb-2-1-dynamically-setting-up-the-endpointinfo-for-wcf-sqlbinding-in-business-rules-engine-bre/</guid>
      <description><![CDATA[Hi
In this blog I'll be showing how to setup the end point configuration for an incoming message...]]></description>
      <content:encoded><![CDATA[<p>Hi</p>
<p>In this blog I'll be showing how to setup the end point configuration for an incoming message in&nbsp; the Business Rules Composer using&nbsp; the vocabulary facts exposed by ESB 2.1.</p>
<p>So here goes the scneario - We have an incoming message which needs to be routed to an end point depending on the content of the message.</p>
<p>Please keep the following points in mind for this scenario</p>
<ol>
<li>Since we are going to dynamically resolve the Itinerary using the message context, select the <em><strong>"ItinerarySelectReceiveXml" pipeline which comes "Out Of Box" with ESB Toolkit</strong></em>.</li>
<li>Inside the developer environment - itinerary Designer , select the Extender Component under which you have configured the BRE Resolver and set the property<strong><em> "UseMsg" as True - If it reamins at it's default value i.e False</em></strong> , at run time the message conent would not be sent to the Business Rules Engine and content based routing would not be possible.- Remember this is required only for the Content based routing scenarios and not needed if you are making decisons insdie your rule based on the the system promoted context properties.</li>
</ol>
<p>Now assuming you have created your Business Rule IF condition based on the content of the message ( for e.g xpath of a given node) , this is how you need to set up the THEN condition and this applies specifically for the WCF based transport end points . Here I would be showing for WCF Sql Port</p>
<p>&nbsp;</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/44/13/3073.BRE%20ESB.JPG" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-44-13/3073.BRE-ESB.JPG"><img border="0" alt="" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/44/13/3073.BRE%20ESB.JPG" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-44-13/3073.BRE-ESB.JPG" /></a><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/44/13/3480.BRE%20ESB.JPG" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-44-13/3480.BRE-ESB.JPG"></a><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/44/13/7838.ESB%20BRI%20Itinerary.JPG" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-44-13/7838.ESB-BRI-Itinerary.JPG"></a></p>
<p>&nbsp;</p>
<p>Remember that the</p>
<p>-&nbsp;&nbsp;Properties that have been set in the actions inside the THEN&nbsp;pane are being exposed by the Out of Box vocabulary set that comes with the ESB Toolkit as shown below in the snapshot.</p>
<p>- The values that have been set for those proeprties need to be as it is there in the snap shot above and can be found in the <strong><em>Bindings fille </em></strong>that comes along when we <strong><em>Consume the Adapter Metadata </em></strong>at design time for importing the schema using the wizard. (Just remember that the WCF Action property value needs to be in {})</p>
<p>- In case you are doing content based routing using Business Rules Engine ( busienss condition is being evaulated using&nbsp;the content of&nbsp;the message&nbsp;) ,&nbsp; then you must ensure that you change the <em><strong>'Document Type'</strong></em>&nbsp; property is set to <em><strong>'Microsoft.Practices.ESB.ResolveProviderMessage'</strong></em> while you are defining&nbsp;the vocabulary.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/44/13/2161.ESB%20vocab.JPG" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-44-13/2161.ESB-vocab.JPG"></a><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/44/13/2335.ESB%20vocab.JPG" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-44-13/2335.ESB-vocab.JPG"><img border="0" alt="" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/44/13/2335.ESB%20vocab.JPG" original-url="https://blogs.msdn.com/resized-image.ashx/__size/425x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-44-13/2335.ESB-vocab.JPG" /></a>&nbsp;</p>]]></content:encoded>
    </item>
    <item>
      <title>Configuring ESB Itinerary Selector Component in ESB , facing "Parameter cannot be NULL" error</title>
      <link>https://docs.microsoft.com/archive/blogs/bizintegration1/configuring-esb-itinerary-selector-component-in-esb-facing-parameter-cannot-be-null-error</link>
      <pubDate>Fri, 02 Mar 2012 02:42:00 GMT</pubDate>
      <dc:creator><![CDATA[Amit Shukla MSFT]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/bizintegration1/2012/03/02/configuring-esb-itinerary-selector-component-in-esb-facing-parameter-cannot-be-null-error/</guid>
      <description><![CDATA[Hi
Well this issues bombed on me when I was preparing for a BizTalk - ESB demo&nbsp; for one of the...]]></description>
      <content:encoded><![CDATA[<p>Hi</p>
<p>Well this issues bombed on me when I was preparing for a BizTalk - ESB demo&nbsp; for one of the customer and again I found that the fault message was the one which really made it such a time consuming issue.</p>
<p>Nevertheless I thought of sharing with the community as it might just save you a couple of hours in crunch situation.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/44/13/4174.ESB%20BRI%20error.JPG" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-44-13/4174.ESB-BRI-error.JPG"><img border="0" alt="" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/44/13/4174.ESB%20BRI%20error.JPG" original-url="https://blogs.msdn.com/resized-image.ashx/__size/375x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-44-13/4174.ESB-BRI-error.JPG" /></a></p>
<p>While I was configuring my "Receive Location" with the OOB pipeline "ItinerarySelectReceiveXml" , under the Resolver Component&nbsp; "ESB Itinerary Selector" ,&nbsp; the "Resolver Connection String" for Business Rule (Rule being used for resolving the itinerary) was specified incorrectly &nbsp;with <strong><em>forward slash " // "instead of " \\ " which was causing the error</em></strong> and yes the Error message was'nt helpig me either.</p>
<p><br /><code class="cplusplus">There was a failure executing the receive pipeline: "Microsoft.Practices.ESB.Itinerary.Pipelines.ItinerarySelectReceiveXml, Microsoft.Practices.ESB.Itinerary.Pipelines, Version=2.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" Source: "ESB Itinerary Selector"<br /> <br /> Reason: Parameter name cannot be null or an empty string.<br /> Parameter name: key </code></p>
<p>&nbsp;</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/44/13/5736.ESB%20BRI%20Itinerary.JPG" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-44-13/5736.ESB-BRI-Itinerary.JPG"><img border="0" alt="" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/44/13/5736.ESB%20BRI%20Itinerary.JPG" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-44-13/5736.ESB-BRI-Itinerary.JPG" width="386" height="339" /></a></p>
<p><br />So simply put , correct the format to&nbsp;" BRI:\\ " and error would be resolved. ( I was using a Business Rules Resolver and hence I have a 'BRI' prefixed to the Connection String ,so have your connection string as per the resolver you need to use).</p>
<p>Keep Biztalkingggg...</p>
<p>&nbsp;</p>
<p>&nbsp;<a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/44/13/4186.ESB%20BRI%20error.JPG" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-44-13/4186.ESB-BRI-error.JPG"></a></p>]]></content:encoded>
    </item>
    <item>
      <title>EDI Leap Year hotfix : For BizTalk Server 2006 R2 &amp; 2009</title>
      <link>https://docs.microsoft.com/archive/blogs/bizintegration1/edi-leap-year-hotfix-for-biztalk-server-2006-r2-2009</link>
      <pubDate>Thu, 23 Feb 2012 04:11:00 GMT</pubDate>
      <dc:creator><![CDATA[Amit Shukla MSFT]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/bizintegration1/2012/02/23/edi-leap-year-hotfix-for-biztalk-server-2006-r2-2009/</guid>
      <description><![CDATA[Hi
Here is a notofication for a critical update for fixing the Leap year issue in BizTalk Server...]]></description>
      <content:encoded><![CDATA[<p>Hi</p>
<p>Here is a notofication for a critical update for fixing the Leap year issue in BizTalk Server 2006 R2 and 2009 versions.</p>
<p>&nbsp;</p>
<p>Important : BizTalk Server 2006 and 2010 versions are not affected by this bug.</p>
<p>&nbsp;</p>
<p><b>EDI Leap Year hotfix: BizTalk 2009 and BizTalk 2006 R2</b></p>
<p>&nbsp;</p>
<p>If using EDI in BizTalk 2009 and BizTalk 2006 R2, install the EDI leap year hotfix before 2/29/12:<a href="https://support.microsoft.com/kb/2435900">2435900</a>&nbsp;&nbsp; FIX:" <strong>Invalid Date" EDI interchange error occurs in BizTalk Server 2006 R2 or in BizTalk Server 2009 if a data element contains a leap date value</strong></p>
<p>&nbsp;</p>
<p><b>BizTalk Server 2009</b>:</p>
<p>There are two ways to get this fix:</p>
<p>&nbsp;<b>Option 1</b>: Install any BizTalk 2009 Cumulative Update. KB <a href="https://support.microsoft.com/kb/2555976">2555976</a> lists the available cumulative updates:</p>
<p>&nbsp;</p>
<p><b>&nbsp;Option 2</b>: Install the stand-alone fix by clicking <b>View and request hotfix downloads</b> at the top of KB article <a href="https://support.microsoft.com/kb/2435900">2435900</a>.</p>
<p>&nbsp;</p>
<p>&nbsp;<b>BizTalk Server 2006 R2</b></p>
<p>There are two ways to get this fix:</p>
<p><b>Option 1</b></p>
<ol>
<li>Install <a href="https://go.microsoft.com/fwlink/?LinkID=163959">BizTalk 2006 R2 ServicePack 1</a>.</li>
<li>Install BizTalk 2006 R2 Service Pack 1 <a href="https://support.microsoft.com/kb/2286501">Cumulative Update 3</a>.</li>
<li>Install leap year fix (3.6.2230): <a href="https://support.microsoft.com/kb/2435900">https://support.microsoft.com/kb/2435900</a></li>
</ol>
<p>PS: It is recommended to install CU3 before applying the fix as there are many other dependent binaries that get<br />updated and it is in the customer&rsquo;s best interest to be on the latest supported<br />platform and minimize troubleshooting efforts.</p>
<p>&nbsp;</p>
<p><span style="text-decoration: line-through;"><b>Option 2</b></span></p>
<p><span style="text-decoration: line-through;">Install the stand-alone fix by clicking <b>View and request hotfix downloads</b> at the top of KB article <a href="https://support.microsoft.com/kb/2435900">2435900</a>.</span></p>
<p>&nbsp;</p>
<p><b>Note</b> BizTalk Server 2010 is not impacted by this bug.</p>]]></content:encoded>
    </item>
    <item>
      <title>Playing with Windows Server Appfabric Cache : Error creating cache - ErrorCode&lt;ERRPS009&gt;:SubStatus&lt;ES0001&gt; DataCacheException</title>
      <link>https://docs.microsoft.com/archive/blogs/bizintegration1/playing-with-windows-server-appfabric-cache-error-creating-cache-errorcodeerrps009substatuses0001-datacacheexception</link>
      <pubDate>Sun, 23 Oct 2011 05:04:00 GMT</pubDate>
      <dc:creator><![CDATA[Amit Shukla MSFT]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/bizintegration1/2011/10/23/playing-with-windows-server-appfabric-cache-error-creating-cache-errorcodeerrps009substatuses0001-datacacheexception/</guid>
      <description><![CDATA[Hi All
While I was playing around with the Windows Server App-Fabric Caching Service , I came...]]></description>
      <content:encoded><![CDATA[<p>Hi All</p>
<p>While I was playing around with the Windows Server App-Fabric Caching Service , I came across a very strange issue.</p>
<p>Well strange because what I was trying to do was one of the most basic things I could have done in App-Fabric - Creating&nbsp; a new Cache in a recently configured Cache on AppFabric Component.</p>
<p>While I was trying to create a new cache though the App Fabric Cache Power-Shell Command-lets</p>
<p>&nbsp;</p>
<p><code class="js">&nbsp;New-Cache -CacheName NewCache -Secondaries 1 -TimeToLive 15</code></p>
<p>&nbsp;</p>
<p>Once I executed the command I came across an unexpected error :</p>
<p>&nbsp;</p>
<p>&nbsp; <code class="js">CategoryInfo : NotSpecified: (:) [NewCache], DataCacheExceptionFullyQualifiedErrorId : ERRPS009,Microsoft.ApplicationServer.Caching.Commands.NewCacheCommand</code></p>
<p><code class="js"></code>&nbsp;</p>
<p><code class="js"></code>Well there was hardly any information available in the error message through which I could have got any indicators towards what the error might be , one of the very informative trainig video helped me in finding the error.</p>
<p>&nbsp;</p>
<p>The reason why I faced this error was because I was not connected to any network and the reason why the presence of a network is critical, is mentioned below :</p>
<p><strong><em>The API's in the back-end that the Power-Shell command-lets uses , are basically the wrapper over the WCF based components that uses "NetTcpBinding"as a binding to communicate across&nbsp; the cluster ( cache server nodes).Hence the for the communication to happen the minimum requirement is to have&nbsp; a Network Adapter ( and I did not have a network connection when I face this error)</em></strong></p>
<p><strong><em>In case a network is&nbsp; not present once can install / enable the "Loop-back Adapter" from the "Network and Sharing Adapter" . By enabling this the WCF based calls would be able to go through the TCP/IP stack and&nbsp; would like a charm.( And this what I did)</em></strong></p>
<p>&nbsp;</p>
<p>Hope that would help a few !!!</p>
<p>&nbsp;</p>
<p>&nbsp;Thanks</p>
<p>&nbsp;&nbsp;Amit</p>
<p>&nbsp;</p>]]></content:encoded>
    </item>
    <item>
      <title>Making BizTalk 2010 talk to AX 2009 using AIF based WCF Services</title>
      <link>https://docs.microsoft.com/archive/blogs/bizintegration1/making-biztalk-2010-talk-to-ax-2009-using-aif-based-wcf-services</link>
      <pubDate>Fri, 21 Oct 2011 02:12:00 GMT</pubDate>
      <dc:creator><![CDATA[Amit Shukla MSFT]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/bizintegration1/2011/10/21/making-biztalk-2010-talk-to-ax-2009-using-aif-based-wcf-services/</guid>
      <description><![CDATA[Hi friends
In this post I'll be talking about how to make BizTalk 2010 ( Should work well with 2006...]]></description>
      <content:encoded><![CDATA[<p>Hi friends</p>
<p>In this post I'll be talking about how to make BizTalk 2010 ( Should work well with 2006 R2 , 2009 as well) with Dynamics AX 2009 using <span style="text-decoration: underline;"><b>AIF based WCF Services</b></span></p>
<p>I am sure some of you might have done or seen the same happening through AIF based Adapter where the effort mostly lies on configuring the Adapter with set of properties (some of them eventually becoming the context properties) but since WCF is the way to go I would be focussing on how to achieve the same through the AIF based WCF Services.</p>
<p>So here it goes :</p>
<p></p>
<h2>Prerequisities from AX side</h2>
<p>Before one can go about consuming the service ,&nbsp; the AIF based WCF Service must be explicitly exposed from the AX ( Read this <a title="How to Setup &amp; Configure AX Service" href="https://technet.microsoft.com/en-us/library/dd309574.aspx">https://technet.microsoft.com/en-us/library/dd309574.aspx</a><span style="color: #0000ff;"></span>&nbsp; and&nbsp; <a title="Configuring AIF Document Exchange Service" href="https://technet.microsoft.com/en-us/library/aa834369.aspx">https://technet.microsoft.com/en-us/library/aa834369.aspx</a><span style="text-decoration: underline;"><b><a title="Configuring WCF Service" href="https://blogs.msdn.com/controlpanel/blogs/posteditor.aspx/posteditor.aspx/%3Cspan%20style=" target="_blank"><span style="text-decoration: underline;"><b>)</b></span></a></b></span></p>
<p>The WCF Service by default is set up on the <b><span style="text-decoration: underline;">'basicHttpbinding</span></b>' which does not allow overriding the '<span style="text-decoration: underline;"><b>HeaderInfo</b></span>' which is again a prerequisite for communicating through WCF Services whether through BizTalk or any vanilla .Net Client.Hence one needs to edit the web.config for the service to set it up on <span style="text-decoration: underline;"><b>'wsHttpBinding'</b></span>'. Read in detail here <a title="Modifying Web.Config" href="https://msdn.microsoft.com/en-US/library/cc652581.aspx" target="_parent">https://msdn.microsoft.com/en-US/library/cc652581.aspx</a><a title="Modifying Web.Config" href="https://blogs.msdn.com/controlpanel/blogs/posteditor.aspx/<span style=" target="_blank"><span style="text-decoration: underline;"><b></b></span></a><b><a title="Modifying Web.Config" href="https://blogs.msdn.com/controlpanel/blogs/posteditor.aspx/%3Cspan%20style=" target="_blank"><span style="color: #0000ff;"></span></a></b></p>
<p>Follow the instructions below to edit the web.config ( C:\Program Files\Microsoft Dynamics AX\50\AifWebServices)</p>
<ol>
<li>
<p>Under the <span class="code">&lt;bindings&gt;</span> tag, add a <span class="code">&lt;wsHttpBinding&gt;</span> tag, which includes a child <span class="code">&lt;binding&gt;</span> tag.</p>
</li>
<li>
<p>In the child <span class="code">&lt;binding&gt;</span> tag, set the <span class="code">name</span> attribute to a unique value, such as <span class="code">wsHttpBindingAuthAif</span>.</p>
</li>
<li>
<p>In the <span class="code">&lt;service&gt;</span> tag for your service, set the <span class="code">binding</span> attribute to <span class="code">wsHttpBinding</span>.</p>
</li>
<li>
<p>In the <span class="code">&lt;service&gt;</span> tag for your service, set the <span class="code">bindingConfiguration</span> attribute to <span class="code">wsHttpBindingAuthAif</span> (or the unique name that you chose earlier in the <span class="code">&lt;binding&gt;</span> tag).</p>
</li>
</ol>
<p></p>
<p>Finally the Web.config should be looking like this :</p>
<p></p>
<p><span style="text-decoration: underline;"><b>Web.Config</b></span></p>
<p></p>
<pre class="scroll"><code class="html">&lt;configuration&gt;<br /><br />...<br /><br /> &lt;system.serviceModel&gt;<br /><br /><br /><br /> &lt;bindings&gt;<br /><br /> &lt;wsHttpBinding&gt;<br /><br /> &lt;binding name = "wsHttpWindowsAuthAif" /&gt;<br /><br /> &lt;/wsHttpBinding&gt;<br /><br /> &lt;/bindings&gt;<br /><br />...<br /><br /> &lt;services&gt;<br /><br /> &lt;service behaviorConfiguration = "serviceBehaviorConfiguration"<br /><br /> name = "Microsoft.Dynamics.IntegrationFramework.Service.SalesOrderService"&gt;<br /><br /> &lt;endpoint address = "" binding = "wsHttpBinding" bindingConfiguration = "wsHttpWindowsAuthAif"<br /><br /> bindingNamespace = "https://schemas.microsoft.com/dynamics/2008/01/services"<br /><br /> contract = "Microsoft.Dynamics.IntegrationFramework.Service.SalesOrderService" /&gt;<br /><br /> &lt;/service&gt;<br /><br /> &lt;/services&gt;<br /><br />...<br /><br /> &lt;/system.serviceModel&gt;<br /><br />&lt;/configuration&gt;<br /><br /></code></pre>
<p></p>
<h2>BizTalk Side</h2>
<p>Every requests that goes to AX must be targeted towards a particular <i><span style="text-decoration: underline;">Destination End Point</span></i>&nbsp; that must have been pre-configured from the AX side. Every request that goes to AX must have the Destination End point specified so that the Requests are directed towards the correct end point. This is how the basic Header looks like :</p>
<pre class="scroll"><code class="cplusplus">&lt;headers&gt;<br /><br /> &lt;MessageId xmlns="http:=//schemas.microsoft.com/dynamics/2008/01/services"&gt;{FFF3E75E-A75C-4228-ABF0-8E3EA2483EB4}&lt;/MessageId&gt;<br /><br /> &lt;SourceEndpointUser xmlns="https://schemas.microsoft.com/dynamics/2008/01/services"&gt;MDSDEMO\Administrator&lt;/SourceEndpointUser&gt;<br /><br /> &lt;SourceEndpoint xmlns="https://schemas.microsoft.com/dynamics/2008/01/services"&gt;BizTalk&lt;/SourceEndpoint&gt;<br /><br /> &lt;DestinationEndpoint xmlns="https://schemas.microsoft.com/dynamics/2008/01/services"&gt;CEU&lt;/DestinationEndpoint&gt;<br /><br />&lt;/headers&gt;</code></pre>
<p></p>
<p></p>
<p>So the bottom line is that one must always ensure that this <span style="text-decoration: underline;">Header&nbsp; information should always be present in the outbound message that goes out of the BizTalk Orchestration to the AX.</span></p>
<p>Now we all know that all the<span style="text-decoration: underline;"><b> fields that are the part of the Header ,are not availble as a Context Proeprties</b></span> ( If we use AIF Adapter , the adapter schema exposes these as context properties for us to use directly not not with directly exposed WCF Services)</p>
<p>So this is where one of the WCF Adapter Context Propeties comes to use ,which helps us set the HeaderInfo within the context of the BizTalk Message. - <span style="text-decoration: underline;"><b>WCF.OutboundCustomHeaders</b></span></p>
<p>So briefly starting from scratch the following steps need to be followed on the BizTalk Side:</p>
<p>1. Import the AX Service meta-data using the "Consume WCF Service Wizard" that would import all the required Schema Files and port bindings along with the MultipartMessage Types and ports inside a newly created Orchestration</p>
<p><img border="0" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/44/13/2678.3.jpg" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-01-44-13/2678.3.jpg" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <img border="0" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/44/13/2146.1.jpg" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-01-44-13/2146.1.jpg" />&nbsp;&nbsp;&nbsp;</p>
<p></p>
<p>2. Once you have got all the schema in place , create your own message using the Multi Part message types , and before you send it out. Set the Context Property : <span style="text-decoration: underline;"><b>WCF.OutboundCustomHeaders</b></span> in an assignment shape within the 'Construct Message Shape'</p>
<p></p>
<pre class="scroll"><code class="csharp">MsgCreateAxItemDataRequest(WCF.OutboundCustomHeaders) = @"&lt;headers&gt;&lt;MessageId xmlns=""https://schemas.microsoft.com/dynamics/2008/01/services""&gt;{FFF3E75E-A75C-4228-ABF0-8E3EA2483EB4}&lt;/MessageId&gt;&lt;SourceEndpointUser xmlns=""https://schemas.microsoft.com/dynamics/2008/01/services""&gt;MDSDEMO\Administrator&lt;/SourceEndpointUser&gt;&lt;SourceEndpoint xmlns=""https://schemas.microsoft.com/dynamics/2008/01/services""&gt;BizTalk&lt;/SourceEndpoint&gt;&lt;DestinationEndpoint xmlns=""https://schemas.microsoft.com/dynamics/2008/01/services""&gt;CEU&lt;/DestinationEndpoint&gt;&lt;/headers&gt;";</code></pre>
<p></p>
<p>Here the message '<code class="csharp">MsgCreateAxItemDataRequest'</code>is my Outbound Message and this the message where the Header Info needs to be put on . Here in the code snippet above, I have used&nbsp; the same HEADER INFO that I have shown at the start</p>
<p>You may modify the Field Values depending upon your business requirements and can also have your way in setting this but the value this Context Property ( <b>WCF.OutboundCustomHeaders</b>&nbsp; ) would have is the String representation of the XML.</p>
<p>3. Another important piece of information I wanted to highlight was that while importing the metadata from the Service ( with wsHttpBinding) , the port bindings ( bindings that you are going to import on to your WCF Send Port) are incomplete ( possibly some bug with the WCF Service Consumption wizard ) and hence you may have to set up the bindings on your own. I am attaching a binding file (<b>WCFPortBindingsWsHttpBindingForAX.bindinginfo.xml</b>) for the port bindings I had setup that worked well but still one may have to do some modifications depending upon the need.</p>
<p></p>
<p>Hope this post would help..Happy BizTalkinggg !!!</p>
<!--[if gte mso 10]>
<mce:style><! 
 /* Style Definitions */
 table.MsoNormalTable
	{mso-style-name:"Table Normal";
	mso-tstyle-rowband-size:0;
	mso-tstyle-colband-size:0;
	mso-style-noshow:yes;
	mso-style-priority:99;
	mso-style-parent:"";
	mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
	mso-para-margin:0cm;
	mso-para-margin-bottom:.0001pt;
	mso-pagination:widow-orphan;
	font-size:10.0pt;
	font-family:"Times New Roman","serif";}
 >
<! [endif] >
</p>
<p>Hi friends</p>
<p>In this post I'll be talking about how to make BizTalk 2010 ( Should work well with 2006 R2 , 2009 as well) with Dynamics AX 2009 using <span style="text-decoration: underline;" mce_style="text-decoration: underline;"><b>AIF based WCF Services</b></span></p>
<p>I am sure some of you might have done or seen the same happening through AIF based Adapter where the effort mostly lies on configuring the Adapter with set of properties (some of them eventualy becoming the context proeprties) but since WCF is the way to go I would be focussing on how to achieve the same through the AIF based WCF Services.</p>
<p>So here it goes :</p>
<p>&nbsp;</p>
<h2>Pre-requisities from AX side<br /></h2>
<p>Before one can go about consuming the service ,&nbsp; the AIF based WCF Service must be explicitly exposed from the AX ( Read this <span style="color: #0000ff;" mce_style="color: #0000ff;"><b><a target="_blank" title="How to Setup &amp; Configure AX Service" href="https://technet.microsoft.com/en-us/library/dd309574.aspx" mce_href="https://technet.microsoft.com/en-us/library/dd309574.aspx">https://technet.microsoft.com/en-us/library/dd309574.aspx</a></b></span>)</p>
<p>The WCF Service by default is set up on the <b><span style="text-decoration: underline;" mce_style="text-decoration: underline;">'basicHttpbinding</span></b>' which does not allow overriding the '<span style="text-decoration: underline;" mce_style="text-decoration: underline;"><b>HeaderInfo</b></span>' which is again a prerequisite for communicating through WCF Services whether through BizTalk or any vanilla .Net Client.Hence one needs to edit the web.config for the service to set it up on <span style="text-decoration: underline;" mce_style="text-decoration: underline;"><b>'wsHttpBinding'</b></span>'. Read in detail here <a target="_blank" title="Configuring WCF Service" href="https://blogs.msdn.com/controlpanel/blogs/posteditor.aspx/&lt;span style=" mce_href="https://blogs.msdn.com/controlpanel/blogs/posteditor.aspx/&lt;span style="><span style="text-decoration: underline;" mce_style="text-decoration: underline;"><b>https://technet.microsoft.com/en-us/library/aa834369.aspx</b></span></a>.</p>
<p> Follow the instructions below to edit the web.config ( C:\Program Files\Microsoft Dynamics AX\50\AifWebServices)</p>
<ol>
<li>
<p>Under the <span class="code">&lt;bindings&gt;</span> tag, add a <span class="code">&lt;wsHttpBinding&gt;</span> tag, which includes a child <span class="code">&lt;binding&gt;</span> tag. </p>
</li>
<li>
<p>In the child <span class="code">&lt;binding&gt;</span> tag, set the <span class="code">name</span> attribute to a unique value, such as <span class="code">wsHttpBindingAuthAif</span>. </p>
</li>
<li>
<p>In the <span class="code">&lt;service&gt;</span> tag for your service, set the 
<span class="code">binding</span> attribute to <span class="code">wsHttpBinding</span>. </p>
</li>
<li>
<p>In the <span class="code">&lt;service&gt;</span> tag for your service, set the 
<span class="code">bindingConfiguration</span> attribute to <span class="code">wsHttpBindingAuthAif</span> (or the unique name that you chose 
earlier in the <span class="code">&lt;binding&gt;</span> tag). </p>
</li>
</ol>
<p>&nbsp;</p>
<h2>BizTalk Side<br /></h2>
<p>Every requests that goes to AX must be targetted towards a particular <i><span style="text-decoration: underline;" mce_style="text-decoration: underline;">Destination End Point</span></i>&nbsp; that must have been pre-configured from the AX side. Every request that goes to AX must have the Destination End point specified so that the Requests are directed towards the correct end point. This is how the basic Header looks like :</p>
<pre class="scroll"><code class="cplusplus">&lt;headers&gt;<br /><br />  &lt;MessageId xmlns="http:=//schemas.microsoft.com/dynamics/2008/01/services"&gt;{FFF3E75E-A75C-4228-ABF0-8E3EA2483EB4}&lt;/MessageId&gt;<br /><br />  &lt;SourceEndpointUser xmlns="https://schemas.microsoft.com/dynamics/2008/01/services"&gt;MDSDEMO\Administrator&lt;/SourceEndpointUser&gt;<br /><br />  &lt;SourceEndpoint xmlns="https://schemas.microsoft.com/dynamics/2008/01/services"&gt;BizTalk&lt;/SourceEndpoint&gt;<br /><br />  &lt;DestinationEndpoint xmlns="https://schemas.microsoft.com/dynamics/2008/01/services"&gt;CEU&lt;/DestinationEndpoint&gt;<br /><br />&lt;/headers&gt;</code></pre>
<p><code class="cplusplus"></code></p>
<p><code class="cplusplus"></code></p>
<p>So the bottom line is that one must always ensure that this <span style="text-decoration: underline;" mce_style="text-decoration: underline;">Header&nbsp; information should always be present in the outbound message that goes out of the BizTalk Orchestration to the AX.</span></p>
<p>Now we all know that all the<span style="text-decoration: underline;" mce_style="text-decoration: underline;"><b> fields that are the part of the Header ,are not availble as a Context Proeprties</b></span> ( If we use AIF Adapter , the adapter schema exposes these as context proeporties for us to use directly not not with directly exposed WCF Services)</p>
<p>So this is where one of the WCF Adapter Context Propeties comes to use ,which helps us set the HeaderInfo within the context of the BizTalk Message. - <span style="text-decoration: underline;" mce_style="text-decoration: underline;"><b>WCF.OutboundCustomHeaders</b></span></p>
<p>So briefly starting from scratch the following steps need to be followed on the BizTalk Side:</p>
<p>1. Import the AX Service meta-data using the "Consume WCF Service Wizard" that would import all the required Schema Files and port bindings along with the MultipartMessage Types and ports inside a newly created Orchestration</p>
<p><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/44/13/2678.3.jpg" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-01-44-13/2678.3.jpg" mce_src="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-01-44-13/2678.3.jpg" border="0" /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; <img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/44/13/2146.1.jpg" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-01-44-13/2146.1.jpg" mce_src="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-01-44-13/2146.1.jpg" border="0" /> &nbsp;&nbsp;&nbsp; </p>
<p>&nbsp;</p>
<p>2. Once you have got all the schema in place , create your own message using the Multi Part message types , and before you send it out. Set the Context Property : <span style="text-decoration: underline;" mce_style="text-decoration: underline;"><b>WCF.OutboundCustomHeaders</b></span> in an assignment shape within the 'Construct Message Shape'</p>
<p>&nbsp;</p>
<pre class="scroll"><code class="csharp">MsgCreateAxItemDataRequest(WCF.OutboundCustomHeaders) = @"&lt;headers&gt;&lt;MessageId xmlns=""https://schemas.microsoft.com/dynamics/2008/01/services""&gt;{FFF3E75E-A75C-4228-ABF0-8E3EA2483EB4}&lt;/MessageId&gt;&lt;SourceEndpointUser xmlns=""https://schemas.microsoft.com/dynamics/2008/01/services""&gt;MDSDEMO\Administrator&lt;/SourceEndpointUser&gt;&lt;SourceEndpoint xmlns=""https://schemas.microsoft.com/dynamics/2008/01/services""&gt;BizTalk&lt;/SourceEndpoint&gt;&lt;DestinationEndpoint xmlns=""https://schemas.microsoft.com/dynamics/2008/01/services""&gt;CEU&lt;/DestinationEndpoint&gt;&lt;/headers&gt;";</code></pre>
<p>&nbsp;</p>
<p>Here the message '<code class="csharp">MsgCreateAxItemDataRequest'</code>is my Outbound Message and this the message where the Header Info needs to be put on . Here in the code snippet above, I have used&nbsp; the same HEADER INFO that I have shown at the start</p>
<p>You may modify the Field Values depending upon your business requirements and can also have your way in setting this but the value this Context Property ( <b>WCF.OutboundCustomHeaders</b>&nbsp; ) would have is the String representation of the XML.</p>
<p>3. Another important piece of information I wanted to highlight was that while importing the metadata from the Service ( with wsHttpBinding) , the port bindings ( bindings that you are going to import on to your WCF Send Port) are incomplete ( possibly some bug with the WCF Service Consumption wizard ) and hence you may have to set up the bindings on your own. I am attaching a binding file (<b>WCFPortBindingsWsHttpBindingForAX.bindinginfo.xml</b>) for the port bindings I had setup that worked well but still one may have to do some modifications depending upon the need.</p>
<p>&nbsp;</p>
<p>Hope this post would help..Happy BizTalkinggg !!!</p>
<p>&nbsp;<--><!--EndFragment-->
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Components.PostAttachments/00/10/22/85/54/WCFPortBindingsWsHttpBindingForAX.bindinginfo.xml" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-components-postattachments/00-10-22-85-54/WCFPortBindingsWsHttpBindingForAX.bindinginfo.xml">WCFPortBindingsWsHttpBindingForAX.bindinginfo.xml</a></p>]]></content:encoded>
    </item>
    <item>
      <title>Exposing Biztalk Orchestration as a WCF Service over SSL</title>
      <link>https://docs.microsoft.com/archive/blogs/bizintegration1/exposing-biztalk-orchestration-as-a-wcf-service-over-ssl</link>
      <pubDate>Tue, 23 Aug 2011 01:05:00 GMT</pubDate>
      <dc:creator><![CDATA[Amit Shukla MSFT]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/bizintegration1/2011/08/23/exposing-biztalk-orchestration-as-a-wcf-service-over-ssl/</guid>
      <description><![CDATA[Well the very reason I am writing something on this is because of so many hours I was stuck doing...]]></description>
      <content:encoded><![CDATA[<p>Well the very reason I am writing something on this is because of so many hours I was stuck doing this.</p>
<p>While many of us might not face issues implementing this , it&nbsp;should help those &nbsp;(and save time) who might be struggling to get this going.</p>
<p>To start with , recently we had a requirement of securing (exposing over SSL)&nbsp;a WCF Service with <em>WsHttpBinding</em> ,which I had developed exposing a Business Interface Orchestration. To secure the service means the</p>
<ul>
<li>The communication should be over https</li>
<li>No Anonymous access should be disabled over the Virtual Directory.</li>
</ul>
<p>For authentication scheme we would target Windows / Basic Authentication</p>
<p>Now&nbsp;coming back to the stuff - There are two parts to this :</p>
<ul>
<li>Enabling the Virtual Directory / Application in IIS to communicate over SSL.</li>
</ul>
<ol><ol>
<li>Hooking a certificate&nbsp;to the Root Web Site to&nbsp;meet the requirement for SSL</li>
<li>Making the required changes in the associated&nbsp;web.config of the Virtual Directory.</li>
</ol></ol>
<ul>
<li>Configuring the BizTalk Receive Location to&nbsp;set the required Security Level&nbsp;to match that of the Virtual Directory.</li>
</ul>
<p>&nbsp;</p>
<p>The steps would be targeted towards BizTalk Server 2010 / IIS 7.0</p>
<h3>&nbsp;Enabling the Virtual Directory / Application in IIS to communicate over SSL</h3>
<h4>Enabling SSL on IIS&nbsp;</h4>
<p>This would be a pretty straight step that we might be doing&nbsp;for enabling communication over SSL for any other website on IIS 7.0 . For more info / help on this refer to <a href="https://learn.iis.net/page.aspx/144/how-to-set-up-ssl-on-iis-7/#IISManager">https://learn.iis.net/page.aspx/144/how-to-set-up-ssl-on-iis-7/#IISManager</a></p>
<h4>Adding User Account to BizTalk Appication Users</h4>
<p>This is an important step and often missed by people.</p>
<p>Please do not forget to add the User Account (Under which your client is running. For e.g. AppPool user in case of a Web Application or Sharepoint hosted Application ) to the BizTalk Group -&nbsp; "<strong><em>Biztalk Application Users"</em></strong></p>
<h4>Modifying Web.Config&nbsp;</h4>
<p>This is the most crucial part of the entire exercise and the one everyone seems to be missing on and face issues ( or at least I faced a lot)</p>
<p>To enable HTTPS following modifications need to be done in the web.config :</p>
<p>Open the web.config of the Virtual Directory</p>
<ol>
<li>Comment out the 'mex' binding so that finally it looks like this</li>
</ol>
<p>&nbsp;</p>
<pre style="padding-left: 60px;" class="scroll"><code class="cplusplus">&lt;services&gt;<br /> &lt;!-- Note: the service name must match the configuration name for the service implementation. --&gt;<br /> &lt;service name="Microsoft.BizTalk.Adapter.Wcf.Runtime.BizTalkServiceInstance" behaviorConfiguration="ServiceBehaviorConfiguration"&gt;<br /> <span style="background-color: #ffff00;">&lt;!--&lt;endpoint name="HttpMexEndpoint" address="mex" binding="mexHttpBinding" bindingConfiguration="" contract="IMetadataExchange" /&gt;--&gt;</span><br /><span style="background-color: #ffff00;"> &lt;!--&lt;endpoint name="HttpsMexEndpoint" address="mex" binding="mexHttpsBinding" bindingConfiguration="" contract="IMetadataExchange" /&gt;--&gt;</span><br /> &lt;/service&gt;<br /> &lt;/services&gt;</code></pre>
<p style="padding-left: 60px;">If we don't comment out&nbsp; 'mex' binding we would get an error&nbsp;like this when we try to browse the service ( The one which killed most of my&nbsp;time)</p>
<p style="padding-left: 60px;"><span style="color: #ff0000; font-size: medium;"><i>Security settings for this service require 'Anonymous' Authentication but it is not enabled for the IIS application that hosts this service</i></span></p>
<p><i></i>&nbsp;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2.&nbsp;&nbsp;&nbsp; Modify&nbsp;the <em>Service Behaviour -&gt; serviceMetadata&nbsp;</em>section to enable <em>https </em>and disable http ( By Default&nbsp; it's like this <span style="background-color: #ffff00;">httpsGetEnabled="false" httpGetEnabled ="true"</span>) so that post modification is should be like the following</p>
<pre style="padding-left: 30px;" class="scroll"><code class="csharp"> &lt;serviceBehaviors&gt;<br /> &lt;behavior name="ServiceBehaviorConfiguration"&gt;<br /> &lt;serviceDebug <span style="background-color: #ffffff;">httpsHelpPageEnabled="true"</span> httpHelpPageEnabled="false" includeExceptionDetailInFaults="false" /&gt;<br /> &lt;serviceMetadata <span style="background-color: #ffff00;">httpsGetEnabled="true" httpGetEnabled ="false"</span>/&gt;<br /> &lt;/behavior&gt;<br /> &lt;/serviceBehavior&gt;</code></pre>
<p style="padding-left: 30px;"><href></href>&nbsp;&nbsp;&nbsp; With the default settings when we try to browse the service , we would probably&nbsp;be getting the followign error :</p>
<p style="padding-left: 30px;">&nbsp;&nbsp; <span style="color: #ff0000; font-size: medium;"><em><span color="#cf4830">Could not find a base address that matches scheme http for the endpoint with binding WsHttpBinding. Registered base address schemes are [https]</span></em></span></p>
<p style="padding-left: 30px;"><span style="color: #ff0000; font-size: medium;"><em><span color="#cf4830"></span></em></span></p>
<h3>Configuring the BizTalk Receive Location to set the required Security Level to match that of the Virtual Directory</h3>
<p>Here , assuming that you would have created a Receive Location in your BizTalk Application using the <em>BizTalk WCF Service Publishing Wizard&nbsp; </em>while publishing the Orchestration as&nbsp;a Service , all we need to do is open the<em> Receive Location - &gt; properties&nbsp;</em>and configure the <em>WsHttpBinding Security</em> settings&nbsp; as shown below .</p>
<p>While here I have selected the credential type as <em>Windows , </em>choice rests with you on what authentication scheme you want to keep , but always remember the fact that whatever scheme you keep here , the same should be set up on the IIS virtual Directory too.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/44/13/2337.Capture.JPG" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-44-13/2337.Capture.JPG"><img border="0" alt="" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/44/13/2337.Capture.JPG" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-44-13/2337.Capture.JPG" width="384" height="534" /></a></p>
<p>&nbsp;</p>
<p>Hope this helps...Till that time HAPPY BizTalkinggg....</p>
<p>&nbsp;</p>
<p></p>]]></content:encoded>
    </item>
  </channel>
</rss>