Saturday, June 19, 2010

BizTalk 2010 Beta – Where are the AppFabric Service Bus bindings?

After installing the Windows Azure platform AppFabric SDK V1.0 - April Update I was expecting all of the AppFabric Service Bus relay bindings to be available inside of the BizTalk Admin Console but they were not.  I could run the AppFabric Echo .Net Sample without any issues.  After re-installing both the AppFabric SDK and BizTalk 2010 Beta I was still unable to find these bindings in the Admin console.  I checked the machine.config files (both 32 bit and 64bit) and both files were updated.  The problem with this is that I checked the .Net 2.0 config files.

After stumbling across Wade Wegner’s blog, the picture became much clearer.  Wade explains “I soon realized that the issue was the machine.config file.  When you install the Azure AppFabric SDK the relevant WCF extensions are added to the .NET Framework 2.0 machine.config file, which is shared by .NET Framework 3.0 and 3.5.  However, .NET Framework 4.0 has its own machine.config file, and the SDK will not update the WCF extensions.”

To resolve the issue you need to run a utility called: RelayConfigurationInstaller.exe which can be found in C:\Program Files (x86)\Windows Azure platform AppFabric SDK\V1.0\Assemblies (64 bit machine) or C:\Program Files\Windows Azure platform AppFabric SDK\V1.0\Assemblies (32 bit machine) and provide an input file that includes

<?xml version ="1.0"?>
<configuration>
<startup>
<requiredRuntime safemode="true"
imageVersion="v4.0.30319"
version="v4.0.30319"/>
</startup>
</configuration>

The name of this file should be called RelayConfigurationInstaller.exe.config.

example:

C:\Program Files (x86)\Windows Azure platform AppFabric SDK\V1.0\Assemblies>RelayConfigurationInstaller.exe /i

After this command was run successfully, I could now see the “Cloud Bindings” including the NetTcpRelayBinding

image

4 comments:

Elizabeth Graham said...

Kent - I had wanted to discuss this in our Tech Ed presentation, but Chris swears it worked for him (the install changed the .NET 4.0 config file).

Kent Weare said...

I hadn't looked at the Service Bus stuff since BTS 2009 so I was really surprised when I could not get this working. If I wouldn't have seen your demo at TechEd, I probably would have logged a bug on connect. Luckily I was able to resolve it without too much effort. I was very close to emailing you guys though.

Johan said...

I had one additional issue that might be worth mentioning in the same context. On a x64 dev machine I had installed only the x86 Adapter Pack (sqlBinding).

When running the tool as above I got an exception:

Installation Error: System.Configuration.ConfigurationErrorsException: Configuration binding extension 'system.serviceModel/bindings/sqlBinding' could not be found. Verify that this binding extension is properly registered in system.serviceModel/extensions/bindingExtensions and that it is spelled correctly.

The resolution is to make sure the x64 Adapter Pack is installed as well.

Kent Weare said...

Good point Johan. I have seen this with the SAP adapter as well.