BAM portal on 64 bit

Cannot configure the BAM portal on a 64 bit Windows server? Probably IIS is not 32 bit enabled. Here is how to fix it:
 
cscript.exe c:inetpubadminscriptsadsutil.vbs set W3SVC/AppPools/Enable32BitAppOnWin64 true
Advertisements

When to use PassThruSend/PassThruReceive and XMLSend/XMLReceive

A general recommendation with BizTalk is to use pass through pipelines when possible, because of less overhead. But when do you have to use XML pipelines?
Often, you can use PassThruSend on the send side but you have to use XMLReceive. This is the case with e.g. the SQL adapter. Otherwise, you get a UnexpectedMessageTypeException ("Received unexpected message type ” does not match expected type ‘xxx’").

Removing XML document namespace

I had to write a helper function to remove the namespace from an XML document, and I was bewildered. My first attempt was to use RemoveAllAttributes:
 
xmlDoc.DocumentElement.RemoveAllAttributes();
string s = xmlDoc.InnerXml();
 
It didn’t work! s still contained xmlns="…". I also tried
 
xmlDoc.DocumentElement.RemoveAttribute("xmlns");
 
with the same result. I had to convert to a string and then use reqular expressions:
 
string s = xmlDoc.InnerXml;
s = System.Text.RegularExpressions.Regex.Replace(s, @"(xmlns:?[^=]*=[""][^""]*[""])", "", System.Text.RegularExpressions.RegexOptions.IgnoreCase | System.Text.RegularExpressions.RegexOptions.Multiline);

MSDTC settings

I have read many times that MSDTC security settings should be consistent on both SQL servers and BizTalk servers. Most people tend to check everything in the security configuration dialog box. I finally stumbled on some recommendations on the settings, and they are as follows:
 
Network DTC Access – Enabled.
Allow Remote Clients – Disabled, unless using MQ Series.
Allow Remote Administrations – Disabled.
Allow Inbound – Enabled.
Allow Outbound – Enabled.
Mutual Authentication Required – Enabled if all remote machines are running Win2K3 SP1 or XP SP2 or higher.
Incoming Caller Authentication Required – Enabled if running MSDTC on a cluster.
No Authentication Required – Enabled if remote machines are pre-Windows Server 2003 SP1 or pre- Windows XP SP2.
Enable TIP – Enabled if running the BAM Portal.
Enable XA Transactions – Enabled if communicating with an XA based transactional system such as when communicating with IBM WebSphere MQ using the MQSeries adapter.