<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-17507535</id><updated>2011-11-27T19:02:07.066-05:00</updated><category term='visual studio'/><category term='biztalk'/><category term='bpm'/><category term='certification'/><category term='office'/><category term='books'/><category term='software engineering'/><category term='soa'/><category term='dynamicsax'/><category term='microsoft'/><category term='.net'/><category term='visio'/><category term='biztalk as2'/><category term='blogs'/><category term='vista'/><category term='aif'/><title type='text'>Another Son of Martha</title><subtitle type='html'>A software engineer's view of application and integration architecture, Microsoft server products and development with Microsoft technologies</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>32</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-17507535.post-2222457320568066400</id><published>2010-06-29T12:17:00.001-04:00</published><updated>2010-06-29T12:20:29.707-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.net'/><category scheme='http://www.blogger.com/atom/ns#' term='biztalk'/><category scheme='http://www.blogger.com/atom/ns#' term='dynamicsax'/><title type='text'>AX .NET Business Connector – How to Open Multiple Company Connections Simultaneously</title><content type='html'>&lt;p&gt;As part of a recent project we needed to access the .NET Business Connector in Dynamics AX through a component (in this case for data lookup in BizTalk’s Business Rule Engine).&amp;#160; Because we were going to have many messages flowing through in a short period of time all requiring evaluation of business rules based on AX data, we intended to create some helper classes to enable the reuse of AX connections and to cache data used in the rules.&amp;#160; Our challenge was that messages were destined for different companies in AX.&amp;#160; If you have two orchestrations simultaneously evaluating these rules which in turn simultaneously open connections to AX you run into a bit of trouble.&lt;/p&gt;  &lt;p&gt;Suppose you have two Microsoft.Dynamics.BusinessConnectorNet.Axapta objects (DAX1, DAX2), one each for different companies:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font face="Courier New"&gt;System.Net.NetworkCredential credential = new System.Net.NetworkCredential(&amp;quot;&amp;lt;BC_USER&amp;gt;&amp;quot;, &amp;quot;&amp;lt;BC_PASSWORD&amp;gt;&amp;quot;, &amp;quot;&amp;lt;BC_DOMAIN&amp;gt;&amp;quot;);        &lt;br /&gt;DAX1.LogonAs(&amp;quot;&amp;lt;AX_USER&amp;gt;”, &amp;quot;&amp;lt;BC_DOMAIN&amp;gt;&amp;quot;, credential, &amp;quot;&amp;lt;COMPANY_1&amp;gt;&amp;quot;, &amp;quot;&amp;quot;, &amp;quot;&amp;lt;COMPANY_1&amp;gt;@&amp;lt;AOS&amp;gt;:&amp;lt;PORT&amp;gt;&amp;quot;, &amp;quot;&amp;quot;);         &lt;br /&gt;DAX2.LogonAs(&amp;quot;&amp;lt;AX_USER&amp;gt;”, &amp;quot;&amp;lt;BC_DOMAIN&amp;gt;&amp;quot;, credential, &amp;quot;&amp;lt;COMPANY_2&amp;gt;&amp;quot;, &amp;quot;&amp;quot;, &amp;quot;&amp;lt;COMPANY_2&amp;gt;@&amp;lt;AOS&amp;gt;:&amp;lt;PORT&amp;gt;&amp;quot;, &amp;quot;&amp;quot;);&lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;When you reach the second LogonAs statement, the logon fails with an exception of type LogonSystemChangedException.&amp;#160; (&amp;quot;The logon failed because the logon parameters do not match those currently being used in Business Connector&amp;quot;).&lt;/p&gt;  &lt;p&gt;The following blog post gives a good description of the Business Connector’s intended use, which is essentially to act as a client:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/floditt/archive/2008/07/24/the-net-business-connector-bc-net-and-the-iis.aspx"&gt;http://blogs.msdn.com/floditt/archive/2008/07/24/the-net-business-connector-bc-net-and-the-iis.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;At first it seemed there was no way to do this.&amp;#160; We opened a ticket with Microsoft and as a short term solution, installed the AX Client on the BizTalk server so that we could use the overload of LogonAs that takes a path to an .axc file with connection details.&amp;#160; It turns out this works, however you have the overhead of installing the AX client on the BizTalk server and creating .axc files for BizTalk.&amp;#160; We didn’t like this idea also because of issues with maintaining the .axc files and the slower performance of the Business Connector using the Client to read the .axc file.&lt;/p&gt;  &lt;p&gt;Ultimately Microsoft came back with a resolution.&amp;#160; It turns out that the parameter for the object server (second last parameter) was incorrect.&amp;#160; Unfortunately in many code samples and on &lt;a href="http://msdn.microsoft.com/en-us/library/microsoft.dynamics.businessconnectornet.axapta.logonas.aspx" target="_blank"&gt;MSDN&lt;/a&gt;, this parameter is defined as &amp;quot;Company1@AosInstance:PortNumber”.&amp;#160; The first part of this should actually be the Instance Name (by default “DynamicsAx”) and the part after the @ sign is the Server name.&amp;#160; A better example might be “DynamicsAx@AOSSERVER01:2712”. &lt;/p&gt;  &lt;p&gt;Changing the above code to use Instance names works:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font face="Courier New"&gt;System.Net.NetworkCredential credential = new System.Net.NetworkCredential(&amp;quot;&amp;lt;BC_USER&amp;gt;&amp;quot;, &amp;quot;&amp;lt;BC_PASSWORD&amp;gt;&amp;quot;, &amp;quot;&amp;lt;BC_DOMAIN&amp;gt;&amp;quot;);        &lt;br /&gt;DAX1.LogonAs(&amp;quot;&amp;lt;AX_USER&amp;gt;”, &amp;quot;&amp;lt;BC_DOMAIN&amp;gt;&amp;quot;, credential, &amp;quot;&amp;lt;COMPANY_1&amp;gt;&amp;quot;, &amp;quot;&amp;quot;, &amp;quot;&amp;lt;INSTANCE_NAME&amp;gt;@&amp;lt;AOS&amp;gt;:&amp;lt;PORT&amp;gt;&amp;quot;, &amp;quot;&amp;quot;);         &lt;br /&gt;DAX2.LogonAs(&amp;quot;&amp;lt;AX_USER&amp;gt;”, &amp;quot;&amp;lt;BC_DOMAIN&amp;gt;&amp;quot;, credential, &amp;quot;&amp;lt;COMPANY_2&amp;gt;&amp;quot;, &amp;quot;&amp;quot;, &amp;quot;&amp;lt;INSTANCE_NAME&amp;gt;@&amp;lt;AOS&amp;gt;:&amp;lt;PORT&amp;gt;&amp;quot;, &amp;quot;&amp;quot;);&lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;So now we can open two connections to AX simultaneously with different companies in the same object instance.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17507535-2222457320568066400?l=asonofmartha.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/2222457320568066400/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17507535&amp;postID=2222457320568066400' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/2222457320568066400'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/2222457320568066400'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/2010/06/ax-net-business-connector-how-to-open.html' title='AX .NET Business Connector – How to Open Multiple Company Connections Simultaneously'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17507535.post-4374673348274551973</id><published>2009-11-23T12:09:00.001-05:00</published><updated>2009-11-23T12:09:36.048-05:00</updated><title type='text'>BizTalk BAM Authentication Error</title><content type='html'>I ran into this issue today on my VPC running BTS2009 on WIN2K8/IIS7:&lt;br&gt;&lt;br&gt;HTTP Error 401: The requested resource requires user authentication&lt;br&gt;&lt;br&gt;I found the following blog posting which helped me resolve the issue:&lt;br&gt; &lt;br&gt;&lt;a href="http://sharepointservices.wordpress.com/2009/04/28/http-error-401-the-requested-resource-requires-user-authentication-in-iis7/"&gt;http://sharepointservices.wordpress.com/2009/04/28/http-error-401-the-requested-resource-requires-user-authentication-in-iis7/&lt;/a&gt;&lt;br&gt; &lt;br&gt;Indeed turning off kernel-mode authentication fixed it but I too am concerned with the validity of this fix.  For now I am not too concerned because it is a local dev VPC so I will see if the new production servers will have the same issue.&lt;br clear="all"&gt; &lt;br&gt;&lt;br&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17507535-4374673348274551973?l=asonofmartha.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/4374673348274551973/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17507535&amp;postID=4374673348274551973' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/4374673348274551973'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/4374673348274551973'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/2009/11/biztalk-bam-authentication-error.html' title='BizTalk BAM Authentication Error'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17507535.post-866300573437812806</id><published>2009-09-10T09:45:00.001-04:00</published><updated>2009-09-10T09:45:05.403-04:00</updated><title type='text'>Dynamics AX AIF Adapter Progress</title><content type='html'>&lt;p&gt;Well after some initial struggles with locked channels (never resolved this, just built a new VPC!!) I have both the AIF tutorial and some PoCs working.&amp;#160; &lt;/p&gt;  &lt;p&gt;Just to clarify that in a previous post I mentioned the latest issue of BizTalk HotRod which has an article on the adapter.&amp;#160; While most of the configuration is the same, it’s important to note that the article uses Dynamics AX 4.0, not 2009.&lt;/p&gt;  &lt;p&gt;A particular challenge I recently had to overcome was regarding security on the send port.&amp;#160; I had setup and tested the AIF tutorials using a Proxy User (providing an AX user account/password right in the send port).&amp;#160; This worked great.&amp;#160; However, once I wanted to enable another document service (namely LedgerPurchaseInvoiceService) and follow an identical approach (correctly assigning a Data Policy, verifying my endpoints) I continued to get errors in the event log indicating permission was denied.&amp;#160; I was using the administrator account as both the BC service account and the gateway user.&amp;#160; I looked at a few other reports of &lt;a href="https://community.dynamics.com/forums/t/5410.aspx" target="_blank"&gt;similar issues&lt;/a&gt; but couldn’t get it working.&lt;/p&gt;  &lt;p&gt;Some colleagues had mentioned that security configuration with AIF can be a challenge, and particularly that using anything other than the Host User configuration can sometimes just not work.&amp;#160; I remain convinced that it should work, I’m just not doing something right.&amp;#160; However I didn’t have a lot of time to debug it and/or open a PSS ticket, so I proceeded to change the send port to use the identity of the Host User (ensuring the service account was a user in DAX with the right permissions) and it worked.&amp;#160; &lt;/p&gt;  &lt;p&gt;I am still concerned about the cause of issue with the Proxy User configuration, but the reality is that it likely makes more sense to use the host instance account for authentication regardless as it simplifies deployment (no password to maintain) and you can keep whatever degree of account isolation you need (one account for all Host Instances, or one per endpoint/service).&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17507535-866300573437812806?l=asonofmartha.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/866300573437812806/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17507535&amp;postID=866300573437812806' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/866300573437812806'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/866300573437812806'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/2009/09/dynamics-ax-aif-adapter-progress.html' title='Dynamics AX AIF Adapter Progress'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17507535.post-2995296661699463525</id><published>2009-09-10T09:36:00.001-04:00</published><updated>2009-09-10T09:36:35.605-04:00</updated><title type='text'>OutOfMemoryException on MemoryStream in Pipeline Component</title><content type='html'>&lt;p&gt;On one of my projects, I was using a custom pipeline component to decompress a file in a send pipeline (*see side note on design decision at end of post).&amp;#160; In the production environment, we began to see pipeline failures caused by mscorlib OutOfMemoryExceptions in the pipeline component.&amp;#160; It was happening sporadically, so at first was not clear what was happening, though we knew the issue was occurring with growing frequency, roughly in correlation to the increase in the size of the file (the compressed file was a statement of account balances which grew as the number of accounts grew).&lt;/p&gt;  &lt;p&gt;As many BizTalkers do, I use the SharpZipLib library for Zip compression (see Pro BizTalk 2006 by Dunphy and Metwally for a great example of this) and was taking the approach of loading the zipstream into a MemoryStream object.&amp;#160; The exception was being thrown in my loop which copied 4K segments into the stream.&lt;/p&gt;  &lt;p&gt;After consulting my &lt;a href="http://www.google.ca" target="_blank"&gt;trusted advisor&lt;/a&gt; I saw a few discussions related to the need to provide a contiguous segment of memory for a MemoryStream to work.&lt;/p&gt;  &lt;p&gt;I quickly inferred the likely culprit: I was trying to load data into a MemoryStream without the OS knowing how much memory to allocate it, so in many cases it was allocating a contiguous block that would not be enough for the uncompressed file.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Short term fix:&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;For the time being, I have simply updated my pipeline component to declare the size of the MemoryStream up front based on the zipstream’s Size property which is the number of bytes of the fiie uncompressed.&lt;/p&gt;  &lt;p&gt;DANGER: the Size property is a Long, whereas you can only instantiate a MemoryStream with an Int32 (of course from the 2GB memory limit for 32-bit processes).&amp;#160; Knowing the file size will not grow beyond 1GB uncompressed, I have squished the long into an int, which of course is terrible.&amp;#160; Hence a long-term fix:&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Long term fix:&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Though I have yet to implement this, the sensible approach is instead to use something like the &lt;a href="http://blogs.neudesic.com/blogs/enterprise_integration/archive/2006/12/27/1366.aspx" target="_blank"&gt;VirtualStream&lt;/a&gt; which will offload data to the filesystem if a stream exceeds a configured size, saving your poor BTSNTSvc.exe &lt;/p&gt;  &lt;p&gt;Indeed hardware should never be used to mask up bad code, but it’s interesting to consider that this issue would likely not have arisen if it had been deployed on a 64-bit OS, which we can hopefully encourage all clients to do in the future.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;* as a side note, the unzip was done in a send pipeline, in opposition to the usual approach of decompressing a file in a receive pipeline because the contents of the file were not needed.&amp;#160; All we wanted to do was route based on the file name, so by delaying the decompression we only needed to load a 16MB compressed file to the messagebox instead of a 700MB uncompressed file.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17507535-2995296661699463525?l=asonofmartha.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/2995296661699463525/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17507535&amp;postID=2995296661699463525' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/2995296661699463525'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/2995296661699463525'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/2009/09/outofmemoryexception-on-memorystream-in.html' title='OutOfMemoryException on MemoryStream in Pipeline Component'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17507535.post-2911070996989002813</id><published>2009-08-27T10:51:00.002-04:00</published><updated>2009-08-27T11:50:14.255-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='visual studio'/><category scheme='http://www.blogger.com/atom/ns#' term='.net'/><category scheme='http://www.blogger.com/atom/ns#' term='biztalk'/><title type='text'>Relative .snk file paths in Visual Studio 2008</title><content type='html'>&lt;p&gt;I’m sure someone has already blogged on this, but as a reminder to myself and others, in Visual Studio 2008 it is not as straightforward to provide a relative path for a shared .snk file (for instance when signing multiple BizTalk projects with the same key file).&lt;/p&gt;  &lt;p&gt;In the past, you could simply type in the path to the snk file in the project properties.  Now this field is a dropdown and selecting browse will only let you find and copy the file to the root of the project.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_SQRilnyucRo/SpadW2srlPI/AAAAAAAAHIk/To3YHD2jE6c/s1600-h/image%5B3%5D.png"&gt;&lt;img style="border: 0px none ; display: inline;" title="image" alt="image" src="http://lh6.ggpht.com/_SQRilnyucRo/SpadXytMkvI/AAAAAAAAHIs/GmJJizV6gxM/image_thumb%5B1%5D.png?imgmax=800" width="347" border="0" height="277" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;To get around this, you can edit the project file (in the case of BizTalk, the .btproj).  The following is an example where the .snk is both included as a shortcut in the project (not a copy) and uses the .snk for signing:&lt;/p&gt;&lt;p&gt;(Note: this project is the updated project schema for BizTalk 2009, so don't try to use this approach for BTS2006+VS2005)&lt;br /&gt;&lt;/p&gt;  &lt;p&gt;&amp;lt;?xml version="1.0" encoding="utf-8"?&amp;gt;  &lt;br /&gt;&amp;lt;Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="&lt;a href="http://schemas.microsoft.com/developer/msbuild/2003%22"&gt;http://schemas.microsoft.com/developer/msbuild/2003"&lt;/a&gt;&amp;gt;   &lt;br /&gt;  &amp;lt;PropertyGroup&amp;gt;   &lt;br /&gt;    &amp;lt;Configuration Condition=" '$(Configuration)' == '' "&amp;gt;Debug&amp;lt;/Configuration&amp;gt;   &lt;br /&gt;    &amp;lt;Platform Condition=" '$(Platform)' == '' "&amp;gt;AnyCPU&amp;lt;/Platform&amp;gt;   &lt;br /&gt;    &amp;lt;ProductVersion&amp;gt;9.0.30729&amp;lt;/ProductVersion&amp;gt;   &lt;br /&gt;    &amp;lt;SchemaVersion&amp;gt;2.0&amp;lt;/SchemaVersion&amp;gt;   &lt;br /&gt;    &amp;lt;ProjectGuid&amp;gt;{6092B853-D9B4-4C5E-B480-746703C74E80}&amp;lt;/ProjectGuid&amp;gt;   &lt;br /&gt;    &amp;lt;ProjectTypeGuids&amp;gt;{EF7E3281-CD33-11D4-8326-00C04FA0CE8D};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}&amp;lt;/ProjectTypeGuids&amp;gt;   &lt;br /&gt;    &amp;lt;OutputType&amp;gt;library&amp;lt;/OutputType&amp;gt;   &lt;br /&gt;    &amp;lt;GenericProcessing&amp;gt;true&amp;lt;/GenericProcessing&amp;gt;   &lt;br /&gt;    &amp;lt;RootNamespace&amp;gt;Test.Orchestrations&amp;lt;/RootNamespace&amp;gt;   &lt;br /&gt;    &amp;lt;AssemblyName&amp;gt;Test.Orchestrations&amp;lt;/AssemblyName&amp;gt;   &lt;br /&gt;    &amp;lt;TargetFrameworkVersion&amp;gt;v3.5&amp;lt;/TargetFrameworkVersion&amp;gt;   &lt;br /&gt;    &amp;lt;BpelCompliance&amp;gt;True&amp;lt;/BpelCompliance&amp;gt;   &lt;br /&gt;    &amp;lt;SignAssembly&amp;gt;true&amp;lt;/SignAssembly&amp;gt;   &lt;br /&gt;    &amp;lt;AssemblyOriginatorKeyFile&amp;gt;&lt;strong&gt;&lt;span style="color:#0000ff;"&gt;..\Test.snk&lt;/span&gt;&lt;/strong&gt;&amp;lt;/AssemblyOriginatorKeyFile&amp;gt;   &lt;br /&gt;  &amp;lt;/PropertyGroup&amp;gt;   &lt;br /&gt;  &amp;lt;PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "&amp;gt;   &lt;br /&gt;    &amp;lt;DebugSymbols&amp;gt;true&amp;lt;/DebugSymbols&amp;gt;   &lt;br /&gt;    &amp;lt;DebugType&amp;gt;full&amp;lt;/DebugType&amp;gt;   &lt;br /&gt;    &amp;lt;Optimize&amp;gt;false&amp;lt;/Optimize&amp;gt;   &lt;br /&gt;    &amp;lt;OutputPath&amp;gt;bin\Debug\&amp;lt;/OutputPath&amp;gt;   &lt;br /&gt;    &amp;lt;DefineConstants&amp;gt;DEBUG;TRACE&amp;lt;/DefineConstants&amp;gt;   &lt;br /&gt;    &amp;lt;ErrorReport&amp;gt;prompt&amp;lt;/ErrorReport&amp;gt;   &lt;br /&gt;    &amp;lt;WarningLevel&amp;gt;4&amp;lt;/WarningLevel&amp;gt;   &lt;br /&gt;  &amp;lt;/PropertyGroup&amp;gt;   &lt;br /&gt;  &amp;lt;PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "&amp;gt;   &lt;br /&gt;    &amp;lt;DebugType&amp;gt;pdbonly&amp;lt;/DebugType&amp;gt;   &lt;br /&gt;    &amp;lt;Optimize&amp;gt;true&amp;lt;/Optimize&amp;gt;   &lt;br /&gt;    &amp;lt;OutputPath&amp;gt;bin\Release\&amp;lt;/OutputPath&amp;gt;   &lt;br /&gt;    &amp;lt;DefineConstants&amp;gt;TRACE&amp;lt;/DefineConstants&amp;gt;   &lt;br /&gt;    &amp;lt;ErrorReport&amp;gt;prompt&amp;lt;/ErrorReport&amp;gt;   &lt;br /&gt;    &amp;lt;WarningLevel&amp;gt;4&amp;lt;/WarningLevel&amp;gt;   &lt;br /&gt;  &amp;lt;/PropertyGroup&amp;gt;   &lt;br /&gt;  &amp;lt;ItemGroup&amp;gt;   &lt;br /&gt;    &amp;lt;Reference Include="System"&amp;gt;   &lt;br /&gt;      &amp;lt;Name&amp;gt;System&amp;lt;/Name&amp;gt;   &lt;br /&gt;    &amp;lt;/Reference&amp;gt;   &lt;br /&gt;    &amp;lt;Reference Include="System.Xml"&amp;gt;   &lt;br /&gt;      &amp;lt;Name&amp;gt;System.XML&amp;lt;/Name&amp;gt;   &lt;br /&gt;    &amp;lt;/Reference&amp;gt;   &lt;br /&gt;    &amp;lt;Reference Include="System.Configuration"&amp;gt;   &lt;br /&gt;      &amp;lt;Name&amp;gt;System.Configuration&amp;lt;/Name&amp;gt;   &lt;br /&gt;    &amp;lt;/Reference&amp;gt;   &lt;br /&gt;    &amp;lt;Reference Include="Microsoft.BizTalk.Pipeline"&amp;gt;   &lt;br /&gt;      &amp;lt;SpecificVersion&amp;gt;False&amp;lt;/SpecificVersion&amp;gt;   &lt;br /&gt;    &amp;lt;/Reference&amp;gt;   &lt;br /&gt;    &amp;lt;Reference Include="Microsoft.BizTalk.DefaultPipelines"&amp;gt;   &lt;br /&gt;      &amp;lt;Name&amp;gt;Microsoft.BizTalk.DefaultPipelines&amp;lt;/Name&amp;gt;   &lt;br /&gt;    &amp;lt;/Reference&amp;gt;   &lt;br /&gt;    &amp;lt;Reference Include="Microsoft.BizTalk.GlobalPropertySchemas"&amp;gt;   &lt;br /&gt;      &amp;lt;Name&amp;gt;Microsoft.BizTalk.GlobalPropertySchemas&amp;lt;/Name&amp;gt;   &lt;br /&gt;    &amp;lt;/Reference&amp;gt;   &lt;br /&gt;    &amp;lt;Reference Include="Microsoft.BizTalk.TestTools"&amp;gt;   &lt;br /&gt;      &amp;lt;Name&amp;gt;Microsoft.BizTalk.TestTools&amp;lt;/Name&amp;gt;   &lt;br /&gt;    &amp;lt;/Reference&amp;gt;   &lt;br /&gt;    &amp;lt;Reference Include="Microsoft.XLANGs.BaseTypes"&amp;gt;   &lt;br /&gt;      &amp;lt;Name&amp;gt;Microsoft.XLANGs.BaseTypes&amp;lt;/Name&amp;gt;   &lt;br /&gt;    &amp;lt;/Reference&amp;gt;   &lt;br /&gt;  &amp;lt;/ItemGroup&amp;gt;   &lt;br /&gt;  &amp;lt;ItemGroup&amp;gt;   &lt;br /&gt;    &amp;lt;Compile Include="Properties\AssemblyInfo.cs" /&amp;gt;   &lt;br /&gt;  &amp;lt;/ItemGroup&amp;gt;   &lt;br /&gt;  &amp;lt;ItemGroup&amp;gt;   &lt;br /&gt;    &amp;lt;None Include="&lt;span style="color:#0000ff;"&gt;&lt;strong&gt;..\Test.snk&lt;/strong&gt;&lt;/span&gt;" /&amp;gt;   &lt;br /&gt;  &amp;lt;/ItemGroup&amp;gt;   &lt;br /&gt;  &amp;lt;Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" /&amp;gt;   &lt;br /&gt;  &amp;lt;Import Project="$(MSBuildExtensionsPath)\Microsoft\BizTalk\BizTalkC.targets" /&amp;gt;   &lt;br /&gt;&amp;lt;/Project&amp;gt;&lt;/p&gt;  &lt;p&gt;Just save the file and VS will reload the project showing “..\Test.snk” as the location of the strong name key file.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17507535-2911070996989002813?l=asonofmartha.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/2911070996989002813/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17507535&amp;postID=2911070996989002813' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/2911070996989002813'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/2911070996989002813'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/2009/08/relative-snk-file-paths-in-visual.html' title='Relative .snk file paths in Visual Studio 2008'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_SQRilnyucRo/SpadXytMkvI/AAAAAAAAHIs/GmJJizV6gxM/s72-c/image_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17507535.post-2467482678454225255</id><published>2009-08-21T16:08:00.002-04:00</published><updated>2009-08-21T16:11:49.959-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='biztalk'/><title type='text'>SysPreping a BizTalk development machine</title><content type='html'>Great info from MSDN on how to set up a development VM that can be shared with other developers in team scenarios.  The scripts are included in the BizTalk SDK.&lt;br /&gt;&lt;br /&gt;http://msdn.microsoft.com/en-us/library/dd792685%28BTS.10%29.aspx&lt;br /&gt;&lt;br /&gt;Note that it mentions that WSS installations will likely need to be reconfigured to get working again following the sysprep.  If WSS is required, considering either leaving WSS unconfigured or not installing until after sysprepping.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17507535-2467482678454225255?l=asonofmartha.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://msdn.microsoft.com/en-us/library/dd792685%28BTS.10%29.aspx' title='SysPreping a BizTalk development machine'/><link rel='replies' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/2467482678454225255/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17507535&amp;postID=2467482678454225255' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/2467482678454225255'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/2467482678454225255'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/2009/08/syspreping-biztalk-development-machine.html' title='SysPreping a BizTalk development machine'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17507535.post-7539219080756234384</id><published>2009-08-21T10:12:00.003-04:00</published><updated>2009-08-21T10:30:25.355-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='biztalk as2'/><title type='text'>An error occurred when validating an AS2 message</title><content type='html'>In an AS2 BizTalk solution for a client, we began to see a number of errors in the event log and the behaviour was that no messages or MDNs would arrive from a particular third party:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_SQRilnyucRo/So6uRsW0ANI/AAAAAAAAHG8/W6LQ8hMCG3I/s1600-h/As2error.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 288px; height: 320px;" src="http://3.bp.blogspot.com/_SQRilnyucRo/So6uRsW0ANI/AAAAAAAAHG8/W6LQ8hMCG3I/s320/As2error.png" alt="" id="BLOGGER_PHOTO_ID_5372423024487432402" border="0" /&gt;&lt;/a&gt;We checked the certificate store and determined the certificate had not been revoked or expired.  Searching the certificate store for the certificate to see where it was installed revealed that the certificate was no longer in the Other People store which is used by BizTalk for verifying signed messages.  We found the resolution on our own, but after the fact noticed the following MSDN article which seems to be pretty thorough about resolving this issue.  Note that our resolution is the last item on the "User Action" list:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/bb898960%28BTS.10%29.aspx"&gt;http://msdn.microsoft.com/en-us/library/bb898960%28BTS.10%29.aspx&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17507535-7539219080756234384?l=asonofmartha.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/7539219080756234384/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17507535&amp;postID=7539219080756234384' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/7539219080756234384'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/7539219080756234384'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/2009/08/error-occurred-when-validating-as2.html' title='An error occurred when validating an AS2 message'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_SQRilnyucRo/So6uRsW0ANI/AAAAAAAAHG8/W6LQ8hMCG3I/s72-c/As2error.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17507535.post-327033505123509856</id><published>2009-08-21T10:05:00.003-04:00</published><updated>2009-08-21T10:32:39.053-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='aif'/><category scheme='http://www.blogger.com/atom/ns#' term='biztalk'/><category scheme='http://www.blogger.com/atom/ns#' term='dynamicsax'/><title type='text'>BizTalk and Dynamics AX 2009 AIF Integration</title><content type='html'>I'm taking the first steps down the road of integrating BizTalk and DAX.  By many accounts, it's not the straightest road, but I'm up for the challenge :)  I'll include any learnings on this as I go.  In the mean time, here is where I have started on this road:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Microsoft Dynamics AX 2009 AIF BizTalk Adapter Configuration White Paper&lt;/span&gt;&lt;br /&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=fb4a979e-cce1-4542-8188-4e8592031da2&amp;amp;displaylang=en"&gt;http://www.microsoft.com/downloads/details.aspx?familyid=EDC62433-5B21-4F74-B065-B075BA6DC86D&amp;amp;displaylang=en&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Latest BizTalk HotRod issue&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;a href="http://www.microsoft.com/DOWNLOADS/details.aspx?FamilyID=e5764bdf-c88d-47f2-a1df-55f368ca9f8d&amp;amp;displaylang=en"&gt;http://biztalkhotrod.com/Documents/Issue7_Q3_2009.pdf&lt;br /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17507535-327033505123509856?l=asonofmartha.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/327033505123509856/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17507535&amp;postID=327033505123509856' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/327033505123509856'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/327033505123509856'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/2009/08/biztalk-and-dynamics-ax-2009-aif.html' title='BizTalk and Dynamics AX 2009 AIF Integration'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17507535.post-6762428471310659035</id><published>2009-07-06T15:28:00.001-04:00</published><updated>2009-08-20T23:29:10.750-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='biztalk'/><title type='text'>BizTalk BAM Data Archiving</title><content type='html'>Being a bit late to the finer points of managing a BAM installation, I&amp;#39;m just discovering some useful and important things to know about BAM, particularly managing its archive and understanding its data age policy.&lt;br&gt; &lt;br&gt;&lt;a href="http://seroter.wordpress.com/2007/06/22/biztalk-bam-data-archiving-explained/"&gt;http://seroter.wordpress.com/2007/06/22/biztalk-bam-data-archiving-explained/&lt;/a&gt;&lt;br&gt;&lt;br&gt;As always, thanks Richard for making such in-depth-yet-easy-to-understand posts.  Makes my job a lot easier :)&lt;br&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17507535-6762428471310659035?l=asonofmartha.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/6762428471310659035/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17507535&amp;postID=6762428471310659035' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/6762428471310659035'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/6762428471310659035'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/2009/07/biztalk-bam-data-archiving.html' title='BizTalk BAM Data Archiving'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17507535.post-3357690996213391862</id><published>2009-07-02T11:39:00.001-04:00</published><updated>2009-08-20T23:29:10.751-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='biztalk'/><title type='text'>BAM Activity and Real-time Aggregations Windows</title><content type='html'>You can modify the duration data is kept in the BAMPrimaryImport database using the bam_Metadata_Activities table:&lt;br&gt;&lt;br&gt;&lt;a href="http://technet.microsoft.com/en-us/library/ms962341.aspx"&gt;http://technet.microsoft.com/en-us/library/ms962341.aspx&lt;/a&gt;&lt;br&gt; &lt;br&gt;In addition, if you are using Real-time Aggregations for BAM data, you can set the window of data kept using the bm utility and the set-rtawindow command:&lt;br&gt;&lt;br&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/aa559458.aspx"&gt;http://msdn.microsoft.com/en-us/library/aa559458.aspx&lt;/a&gt;&lt;br&gt; &lt;br&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17507535-3357690996213391862?l=asonofmartha.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/3357690996213391862/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17507535&amp;postID=3357690996213391862' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/3357690996213391862'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/3357690996213391862'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/2009/07/bam-activity-and-real-time-aggregations.html' title='BAM Activity and Real-time Aggregations Windows'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17507535.post-3330413025069632984</id><published>2008-10-01T14:46:00.002-04:00</published><updated>2008-10-01T14:57:30.809-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='biztalk'/><title type='text'>Changing Default BAM Alerts From Email</title><content type='html'>By default, the BAM alerts installed out of the box are set up to be mailed with a from address of &lt;a href="mailto:BAM@microsoft.com"&gt;BAM@microsoft.com&lt;/a&gt;  This is a security concern for clients, not to mention kind of silly.&lt;br /&gt;&lt;br /&gt;I kept looking for a while for the steps to change this, so I'm posting this so I can remember for next time.&lt;br /&gt;&lt;br /&gt;General info on the script used is documented in MSDN:&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/aa560641.aspx"&gt;http://msdn.microsoft.com/en-us/library/aa560641.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;These steps came from a user named Kent Weare on a &lt;a href="http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=2207199&amp;amp;SiteID=1"&gt;BizTalk R2 General forum&lt;/a&gt;, but I am reposting his response in case it becomes unavailable in the future.  The steps look to be copy-pasted from documentation somewhere, which I have yet to find an original source for.  Note: there is no step 1.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Step 2:  Retrieve the current BAMAlerts Application Definition File&lt;br /&gt;(ADF)&lt;br /&gt;&lt;br /&gt;1.       On the Start menu, point to All Programs, point to Microsoft SQL Server 2005, point to Notification Services, and then click Notification Services Command Prompt to open a Notification Services Command Prompt window.&lt;br /&gt;2.       C:\Program Files\Microsoft BizTalk Server 2006\Tracking&gt;cscript ProcessBamNSFiles.vbs -Get config.xml adf.xml &lt;database_server&gt; BAMPrimaryImport&lt;br /&gt;&lt;br /&gt;Step 3:  Modify Application Definition File (ADF)&lt;br /&gt;&lt;br /&gt;1.       Copy adf.xml to ClusterAdf.xml&lt;br /&gt;2.        Change SMTP from info: from ‘BAM@Microsoft.com’ to ‘&lt;your_desired_email_address&gt;’.&lt;br /&gt;4.       Save ClusterAdf.xml&lt;br /&gt;&lt;br /&gt;Step 4:  Update the current BAMAlert Application Definition File (ADF)&lt;br /&gt;&lt;br /&gt;1.       C:\Program Files\Microsoft BizTalk Server 2006\Tracking&gt;cscript ProcessBamNSFiles.vbs -Update config.xml ClusterAdf.xml &lt;database_server&gt;&lt;br /&gt;BAMPrimaryImport&lt;br /&gt;&lt;br /&gt;Don't worry about the "ClusterAdf.xml" naming convention.  We clustered the Bam alerts service hence us calling the file that.&lt;br /&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17507535-3330413025069632984?l=asonofmartha.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/3330413025069632984/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17507535&amp;postID=3330413025069632984' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/3330413025069632984'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/3330413025069632984'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/2008/10/changing-default-bam-alerts-from-email.html' title='Changing Default BAM Alerts From Email'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17507535.post-9011296610860868142</id><published>2008-09-26T12:10:00.001-04:00</published><updated>2008-10-02T12:58:15.283-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='biztalk'/><title type='text'>Event Log error on BTSHTTPReceive.dll</title><content type='html'>&lt;div dir="ltr"&gt;&lt;div&gt;This posting also helped me figure out why I got event log errors indicating IIS could not find a file in the C:\Windows\Temp directory.&amp;nbsp; &lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt;Always make sure the application pool worker service account has Read access to the windows Temp directory!&lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt;&lt;a href="http://www.biztalkgurus.com/blogs/biztalksyn/archive/2006/08/01/BizTalk-HTTP-Adapter-_2800_BtsHttpReceive.dll_2900_-Error.aspx"&gt;http://www.biztalkgurus.com/blogs/biztalksyn/archive/2006/08/01/BizTalk-HTTP-Adapter-_2800_BtsHttpReceive.dll_2900_-Error.aspx&lt;/a&gt;&lt;/div&gt;  &lt;div&gt;&amp;nbsp;&lt;/div&gt;&lt;/div&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17507535-9011296610860868142?l=asonofmartha.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/9011296610860868142/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17507535&amp;postID=9011296610860868142' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/9011296610860868142'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/9011296610860868142'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/2008/09/event-log-error-on-btshttpreceivedll.html' title='Event Log error on BTSHTTPReceive.dll'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17507535.post-844986450632826252</id><published>2008-09-26T12:06:00.001-04:00</published><updated>2008-10-02T12:58:15.283-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='biztalk'/><title type='text'>Successful Configuration of the BAM Portal</title><content type='html'>&lt;div dir="ltr"&gt;&lt;div&gt;This post helped me work out a HTTP 401 error I was receiving on the BAM Portal.&amp;nbsp; I only had to do the first step he recommended (setting authentication to use NTLM) which can be missed, especially if (as I have) created a whole new website to host BAM.&lt;/div&gt;  &lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt;&lt;a href="http://biztalkwithshashikant.blogspot.com/2007/08/rules-for-successful-bam-implementation.html"&gt;http://biztalkwithshashikant.blogspot.com/2007/08/rules-for-successful-bam-implementation.html&lt;/a&gt;&lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;/div&gt;&lt;/div&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17507535-844986450632826252?l=asonofmartha.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/844986450632826252/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17507535&amp;postID=844986450632826252' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/844986450632826252'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/844986450632826252'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/2008/09/successful-configuration-of-bam-portal.html' title='Successful Configuration of the BAM Portal'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17507535.post-6408332383563323799</id><published>2008-08-11T10:53:00.002-04:00</published><updated>2008-10-02T12:57:44.070-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='biztalk'/><title type='text'>BizTalk Deployment Framework: Add Reference to Application</title><content type='html'>&lt;div dir="ltr"&gt;I wish I had found this before - I had not previously found a way to script the adding of a reference to another application, and thus used workarounds (like including assemblies from other projects).&lt;br /&gt;&lt;br /&gt;&lt;a href="http://blogs.sqlxml.org/bryantlikes/archive/2007/07/18/creating-biztalk-application-references-with-nant.aspx"&gt;http://blogs.sqlxml.org/bryantlikes/archive/2007/07/18/creating-biztalk-application-references-with-nant.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;This is particularly useful if you have a separate application defined for a common Exception Handling framework (for instance using the ESB Guidance package: &lt;a href="http://www.codeplex.com/esb"&gt;http://www.codeplex.com/esb&lt;/a&gt;).&lt;br /&gt;&lt;br /&gt;Thanks Bryant!&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17507535-6408332383563323799?l=asonofmartha.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/6408332383563323799/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17507535&amp;postID=6408332383563323799' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/6408332383563323799'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/6408332383563323799'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/2008/08/biztalk-deployment-framework-add.html' title='BizTalk Deployment Framework: Add Reference to Application'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17507535.post-1125863344420165551</id><published>2008-06-25T16:45:00.001-04:00</published><updated>2008-06-25T16:45:26.091-04:00</updated><title type='text'>The Starbuckian Handbook from Hog Blog</title><content type='html'>For those of us admitted users of a local coffee shop for times we don&amp;#39;t need to work at the office but need to get out of the house, someone has drawn up a reasonable code of ethics for the &amp;#39;Starbuckian&amp;#39;.&amp;nbsp; &lt;br&gt; &lt;br&gt;&lt;a href="http://www.radicalcareering.com/hogblog/?p=80"&gt;http://www.radicalcareering.com/hogblog/?p=80&lt;/a&gt;&lt;br&gt;&lt;br&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17507535-1125863344420165551?l=asonofmartha.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/1125863344420165551/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17507535&amp;postID=1125863344420165551' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/1125863344420165551'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/1125863344420165551'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/2008/06/starbuckian-handbook-from-hog-blog.html' title='The Starbuckian Handbook from Hog Blog'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17507535.post-1001979366421745249</id><published>2008-01-04T11:00:00.001-05:00</published><updated>2008-01-04T11:06:19.000-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='biztalk'/><title type='text'>So You Want to Learn BizTalk... (Part II)</title><content type='html'>With the fundamental concepts of BizTalk server under your belt, you are ready to get your hands dirty.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Labs&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;While especially easy to use if you do not have a development machine setup, these labs provide a relatively superficial demonstration of the core BizTalk features.  Can be useful for a quick demo to a non-developer though.  &lt;p&gt;Microsoft Virtual Labs&lt;br /&gt;&lt;a href="http://msdn2.microsoft.com/en-us/virtuallabs/aa740373.aspx" target="_blank"&gt; http://msdn2.microsoft.com/en-us/virtuallabs/aa740373.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Tutorials&lt;/b&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt; What's better are the tutorials that are part of the documentation and SDK.  This is where a developer really goes 'aha!' for the first time and starts to see he or she can begin to use BizTalk Server.  These are not optional ;)&lt;br /&gt;&lt;/p&gt;&lt;p&gt;BizTalk Tutorials:&lt;br /&gt;&lt;a href="http://msdn2.microsoft.com/en-us/library/aa560270.aspx"&gt;http://msdn2.microsoft.com/en&lt;/a&gt;&lt;a href="http://msdn2.microsoft.com/en-us/library/aa560270.aspx"&gt;-us/library/aa560270.aspx&lt;/a&gt;&lt;/p&gt;&lt;b&gt;Training&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;If you or your employer are part of the Microsoft Partner program, you have access to perhaps the most valuable and comprehensive self-training package out there - the Classroom-in-a-Box.  It includes training videos and slides, whitepapers, more hands-on labs and a VPC with every possible BizTalk core feature installed and configured.  It can be accessed under the Partner Resources in the BizTalk product area:&lt;br /&gt;&lt;a href="https://partner.microsoft.com/US/40012176"&gt;https://partner.microsoft.com/US/40012176&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Books&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;I don't claim to have read many of the books out there on the product.  From experience however I can safely say that this book has proved valuable numerous times both as a first read a reference on projects:&lt;br /&gt;&lt;a href="http://www.chapters.indigo.ca/books/item/books-978159059699/0/Pro+Biztalk+2006"&gt;http://www.chapters.indigo.ca/books/item/books-978159059699/0/Pro+Biztalk+2006&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;You can read my review of it here:&lt;br /&gt;&lt;a href="http://asonofmartha.blogspot.com/2006/11/pro-biztalk-2006.html"&gt;http://asonofmartha.blogspot.com/2006/11/pro-biztalk-2006.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Additional titles can be found here:&lt;br /&gt;&lt;a href="http://btob.barnesandnoble.com/index.asp?sourceID=0041631635&amp;amp;btob=Y"&gt; http://btob.barnesandnoble.com/index.asp?sourceID=0041631635&amp;amp;btob=Y&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Blogs&lt;/b&gt;&lt;br /&gt;&lt;p&gt;With prior versions of BizTalk Server, the best place to get answers to real-world problems was always through blogs.  Now, MSDN is typically the authority on the "How-To" and plenty of books exist for the product, however there continue to be scores of bloggers discussing their challenges and successes implementing BizTalk solutions.  Too many to list in fact, and so here are some links to discover those blogs: &lt;/p&gt;&lt;p&gt;&lt;a href="http://www.squidoo.com/bts06"&gt;http://www.squidoo.com/bts06&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.squidoo.com/bts06"&gt;http://www.biztalkgurus.com/&lt;br /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.squidoo.com/bts06"&gt;http://www.biztalkgurus.com/blogs/&lt;br /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;My &lt;a href="http://del.icio.us/"&gt;del.icio.us&lt;/a&gt; BizTalk links:&lt;/p&gt;&lt;p&gt;&lt;a href="http://del.icio.us/zutroyquixote/BizTalk"&gt;http://del.icio.us/zutroyquixote/BizTalk&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://del.icio.us/zutroyquixote/BizTalk"&gt;&lt;br /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;Newsletters and Publications&lt;/b&gt;&lt;/p&gt;&lt;p&gt;BizTalk Gurus offers a periodic newsletter called &lt;i&gt;The BizTalker&lt;/i&gt; with useful "news from the front":&lt;br /&gt;&lt;a href="http://www.biztalkgurus.com/newsletter/index.aspx"&gt; http://www.biztalkgurus.com/newsletter/index.aspx&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;There is also a quarterly publication now on its third release called &lt;a href="http://biztalkhotrod.com/default.aspx"&gt;BizTalk HotRod&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt; Where to next...&lt;/b&gt;&lt;/p&gt;At this point, you should be well-armed to assist in new or existing BizTalk projects.  However, if you are expected to start or lead a project on your own you will do well to fill out your training with additional reading and possibly formal training (including certification).&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Coming Up Next:&lt;br /&gt;&lt;/p&gt;Part III: Beyond the basics&lt;br /&gt;&lt;br /&gt;Previously:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://asonofmartha.blogspot.com/2007/12/so-you-want-to-learn-biztalk-part-i.html"&gt; Part I:&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17507535-1001979366421745249?l=asonofmartha.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/1001979366421745249/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17507535&amp;postID=1001979366421745249' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/1001979366421745249'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/1001979366421745249'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/2008/01/so-you-want-to-learn-biztalk-part-ii.html' title='So You Want to Learn BizTalk... (Part II)'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17507535.post-7641999596400964874</id><published>2007-12-21T10:19:00.000-05:00</published><updated>2008-01-04T11:06:06.929-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='biztalk'/><title type='text'>So You Want to Learn BizTalk... (Part I)</title><content type='html'>Learning a new technology can often be a challenge especially if it is one that requires a different different set of lenses on the world.  No better can this thought be applied than to the undertaking of learning BizTalk development.  It is not for the faint of heart.   Let me make it clear that BizTalk is a very powerful and agile tool - but this in combination with the complexities of the problems it solves gives the tool a steep learning curve.&lt;u&gt;&lt;br /&gt;&lt;br /&gt;Experience Prerequisites&lt;/u&gt;&lt;br /&gt;    &lt;ul&gt;&lt;li&gt;Strong knowledge of the .NET Framework (2.0 or higher)&lt;span&gt;&lt;span&gt;&lt;span style="font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; font-size-adjust: none; font-stretch: normal;font-size:7;" &gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;Strong familiarity with XML and related tools (XPath, XSLT)&lt;span&gt;&lt;span&gt;&lt;span style="font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; font-size-adjust: none; font-stretch: normal;font-size:7;" &gt;     &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-style: normal; font-variant: normal; font-weight: normal; line-height: normal; font-size-adjust: none; font-stretch: normal;font-size:7;" &gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Understanding of SOAP web services and when to use them&lt;/li&gt;&lt;li&gt;Use of Visual Studio 2005&lt;/li&gt;&lt;/ul&gt;I wrote this list then realized an almost identical list comes from the horse's mouth:&lt;br /&gt;&lt;a href="http://msdn2.microsoft.com/en-us/library/aa577674.aspx" target="_blank"&gt;   http://msdn2.microsoft.com/en-us/library/aa577674.aspx &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;u&gt;Experience Nice-To-Haves&lt;br /&gt;&lt;/u&gt;&lt;ul&gt;&lt;li&gt;Experience with Integration projects&lt;/li&gt;&lt;li&gt;Understanding of Message-Oriented development&lt;/li&gt;&lt;li&gt;Understanding of Service-Oriented Architecture (incl the Tenets of SOA)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Understanding of Enterprise Services Buses&lt;/li&gt;&lt;/ul&gt;&lt;u&gt;Where to Begin&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;As with development of any server product, I strongly recommend using a virtual PC on which you can install everything (SQL Server + BIzTalk Server + Visual Studio).  Development can be done on a separate machine from the DEV server, but if you are using a VPC having everything on the same box will save time.&lt;br /&gt;&lt;br /&gt;Part of the initiation to BizTalk development should most certainly include performing the full BizTalk installation.  This will serve to appreciate what is actually under-the-hood.  Even if infrastructure and server installation is not your forte, this experience will serve you well in your trials and tribulations ... er, travels.&lt;br /&gt;&lt;br /&gt;To start, as with most Microsoft products, the best place is the Microsoft Learning:&lt;br /&gt;&lt;p&gt;Clinic 2954: First Look: Microsoft BizTalk Server 2006 for Developers&lt;br /&gt;&lt;a href="https://www.microsoftelearning.com/eLearning/courseDetail.aspx?courseId=51883" target="_blank"&gt;https://www.microsoftelearning.com/eLearning/courseDetail.aspx?courseId=51883&lt;/a&gt;&lt;/p&gt;    With that, you can flesh out the details with this article from the documentation:&lt;br /&gt;&lt;p&gt;Product Documentation: Understanding BizTalk&lt;br /&gt;&lt;a href="http://msdn2.microsoft.com/en-us/library/aa546748.aspx" target="_blank"&gt;http://msdn2.microsoft.com/en-us/library/aa546748.aspx &lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Coming Up Next:&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://asonofmartha.blogspot.com/2008/01/so-you-want-to-learn-biztalk-part-ii.html"&gt;Part II:  Tutorials, Labs and Books, Oh My!&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Part III: Beyond the basics&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17507535-7641999596400964874?l=asonofmartha.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/7641999596400964874/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17507535&amp;postID=7641999596400964874' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/7641999596400964874'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/7641999596400964874'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/2007/12/so-you-want-to-learn-biztalk-part-i.html' title='So You Want to Learn BizTalk... (Part I)'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17507535.post-250967032266290253</id><published>2007-09-21T10:31:00.000-04:00</published><updated>2007-09-21T10:49:30.315-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='software engineering'/><title type='text'>CompSci != Software Engineering</title><content type='html'>Regarding Chris Chapman's article &lt;a href="http://www.chapmanconsulting.ca/Lists/Posts/Post.aspx?ID=164"&gt;Reviewing Ontario CompSci Schools:  Who's Teaching Best Practices?&lt;/a&gt; of September 17,2007&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;I was going to post this as a comment on his blog, but it turned into a posting of my own :) &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I definitely appreciate the sentiments Chris has raised and respect the research he has done (even if he says it is a rough assessment). My biggest beef with this analysis, however, is that it completely ignores the fact that as many as half of the schools looked into also offer Computer Engineering with a Software specialization, if not true Software Engineering within the Engineering (not the Science) faculties.&lt;br /&gt;&lt;br /&gt;I will insist that this is an important distinction.  A Science faculty is going to emphasize research and development, as well as the more hard/pure/abstract aspects of Computer Science.  Topics such as best practices in industry, ethics and professionalism are of course going to be elective, as they might be in mathematics or botany programs.  I suppose the unfortunate reality is that most Comp Sci grads still go into industry as a developer (for instance) but the industry has made the assumption that such grads are software &lt;span style="font-style: italic;"&gt;professionals&lt;/span&gt; truly grounded in best practices and methodology.&lt;br /&gt;&lt;br /&gt;Software engineering is such an oft-abused word and by no means does a comp-sci grad &lt;span style="font-style: italic;"&gt;necessarily&lt;/span&gt; have software engineering skills or even understand what software engineering really means.  Especially in Ontario (to tow the line of the &lt;a href="http://www.peo.on.ca/"&gt;PEO&lt;/a&gt;) it is becoming clear why so many engineering faculties are trying to bring software engineering into their domain - industry is expecting a software developer to have engineering skills!  And as you imply, it is to the detriment to us all in the software industry if these issues are not cleared up: people in the industry need to have a grounding in best practices and projects need to completed successfully within time/budget etc.&lt;br /&gt;&lt;br /&gt;Having come through the Software Engineering program at &lt;a href="http://www.uwo.ca/"&gt;UWO&lt;/a&gt;, I agree that there is still some bias towards requirements engineering (which for better or worse is still an approach used in the industry) but other methodologies including Agile are gaining more ground.  The academic calendar for Western's SE program can be seen on this link:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.westerncalendar.uwo.ca/western/web/2007%28new%29/Courses_UWO_SE.html"&gt;http://www.westerncalendar.uwo.ca/western/web/2007(new)/Courses_UWO_SE.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Universities by nature still tend to be slow moving of course and with such a rapidly evolving industry like software, there will likely always be a disparity between what is taught and what is done.  That means industry may have to bear the burden of ramping up new grads.  So be it - I'm sure this is nothing new to most employers.  That said, I am all for academic programs (particularly ones with an industry focus, like engineering) teaching and making mandatory courses on best practices.&lt;br /&gt;&lt;br /&gt;The reasons for software project failures are many, not the least of which is people understanding the difference between software and other "hard engineering" projects.  I think much of the solution lies in educating industry on where best practices are truly taught (as Chris has helped show) but more importantly actually teaching them to all software graduates (especially those becoming software professionals) and this will likely include the continued migration of teaching software engineering into the engineering schools.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17507535-250967032266290253?l=asonofmartha.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.chapmanconsulting.ca/Lists/Posts/Post.aspx?ID=164' title='CompSci != Software Engineering'/><link rel='replies' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/250967032266290253/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17507535&amp;postID=250967032266290253' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/250967032266290253'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/250967032266290253'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/2007/09/compsci-software-engineering.html' title='CompSci != Software Engineering'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17507535.post-2858278495976152343</id><published>2007-09-17T15:12:00.000-04:00</published><updated>2007-09-17T15:29:42.926-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='certification'/><title type='text'>Path to MCPD Certification Revised!</title><content type='html'>Whoa was I off...  In one of my previous &lt;a href="http://asonofmartha.blogspot.com/2007/09/path-to-mcpd-certification-demystified.html"&gt;postings&lt;/a&gt; I outlined the steps to achieving an MCPD in Enterprise Applications.  While legitimate, it is leveraging exams that focus on .NET 1.1 and are not part of the "new" stream of MCP exams.  If you actually read the page for the MCPD requirements (as I apparently did not) it indicates that for individuals with no previous certifications, it really takes 5 exams (see plan below).  This new path cannot, sadly, leverage my MCTS in BizTalk Server and does not have any intermediate certifications besides a .NET MCTS, but it only takes 5 exams rather than the 7 I had outlined before.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="direction: ltr;"&gt;  &lt;table valign="top" style="border: 1pt solid rgb(163, 163, 163); direction: ltr; border-collapse: collapse; width: 343px; height: 259px;" border="1" cellpadding="0" cellspacing="0"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td style="border: 1pt solid rgb(163, 163, 163); padding: 4pt; vertical-align: top; width: 0.6673in; font-family: arial; font-weight: bold;"&gt;   &lt;p style="margin: 0in; font-size: 11pt;" lang="en-CA"&gt;&lt;span style="font-size:85%;"&gt;Exam&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid rgb(163, 163, 163); padding: 4pt; vertical-align: top; width: 1.6145in; font-family: arial; font-weight: bold;"&gt;   &lt;p style="margin: 0in; font-size: 11pt;" lang="en-CA"&gt;&lt;span style="font-size:85%;"&gt;Certification   Awarded &lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;     &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="border: 1pt solid rgb(163, 163, 163); padding: 4pt; vertical-align: top; width: 0.6673in; font-family: arial;"&gt;   &lt;p style="margin: 0in; font-size: 11pt;" lang="en-CA"&gt;&lt;span style="font-size:85%;"&gt;70-536&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid rgb(163, 163, 163); padding: 4pt; vertical-align: top; width: 1.6145in; font-family: arial;"&gt;   &lt;p style="margin: 0in; font-weight: bold; font-size: 11pt;" lang="en-CA"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;     &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="border: 1pt solid rgb(163, 163, 163); padding: 4pt; vertical-align: top; width: 0.6673in; font-family: arial;"&gt;   &lt;p style="margin: 0in; font-size: 11pt;" lang="en-CA"&gt;&lt;span style="font-size:85%;"&gt;70-528&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid rgb(163, 163, 163); padding: 4pt; vertical-align: top; width: 1.6145in; font-family: arial;"&gt;   &lt;p style="margin: 0in; font-size: 11pt;" lang="en-CA"&gt; &lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-weight: bold;"&gt; MCTS: .NET Framework 2.0 Web Applications&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;     &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="border: 1pt solid rgb(163, 163, 163); padding: 4pt; vertical-align: top; width: 0.6673in; font-family: arial;"&gt;   &lt;p style="margin: 0in; font-size: 11pt;" lang="en-CA"&gt;&lt;span style="font-size:85%;"&gt;70-526&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid rgb(163, 163, 163); padding: 4pt; vertical-align: top; width: 1.6145in; font-family: arial;"&gt;   &lt;p style="margin: 0in; font-weight: bold; font-size: 11pt;" lang="en-CA"&gt;&lt;span style="font-size:85%;"&gt;MCTS: .NET Framework 2.0 Windows Applications&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;   &lt;td style="border: 1pt solid rgb(163, 163, 163); padding: 4pt; vertical-align: top; width: 0.6673in; font-family: arial;"&gt;   &lt;p style="margin: 0in; font-size: 11pt;" lang="en-CA"&gt;&lt;span style="font-size:85%;"&gt;70-553&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid rgb(163, 163, 163); padding: 4pt; vertical-align: top; width: 1.6145in; font-family: arial;"&gt;   &lt;p style="margin: 0in; font-size: 11pt;" lang="en-CA"&gt; &lt;/p&gt; &lt;span style="font-weight: bold;font-size:85%;" &gt;MCTS: .NET Framework 2.0 Distributed Applications&lt;/span&gt;&lt;/td&gt;     &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="border: 1pt solid rgb(163, 163, 163); padding: 4pt; vertical-align: top; width: 0.6673in; font-family: arial;"&gt;   &lt;p style="margin: 0in; font-size: 11pt;" lang="en-CA"&gt;&lt;span style="font-size:85%;"&gt;70-549&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid rgb(163, 163, 163); padding: 4pt; vertical-align: top; width: 1.6145in; font-family: arial;"&gt;   &lt;p style="margin: 0in; font-weight: bold; font-size: 11pt;" lang="en-CA"&gt;&lt;span style="font-size:85%;"&gt;MCPD: Enterprise Applications Developer&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;     &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;/div&gt;&lt;br /&gt;If you like, you can also get the specific MCPD after each of the MCTS if you don't intend on going as far as the MCPD Enterprise Applications.&lt;br /&gt;&lt;br /&gt;Certification requirements:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;MCTS: .NET Framework 2.0 Distributed Applications&lt;br /&gt;&lt;a href="http://www.microsoft.com/learning/mcp/mcts/distapps/default.mspx"&gt;http://www.microsoft.com/learning/mcp/mcts/distapps/default.mspx&lt;/a&gt;&lt;/li&gt;&lt;li&gt;MCTS: .NET Framework 2.0 Windows Applications&lt;br /&gt;&lt;a href="http://www.microsoft.com/learning/mcp/mcts/winapps/default.mspx"&gt;http://www.microsoft.com/learning/mcp/mcts/winapps/default.mspx&lt;/a&gt;&lt;a href="http://www.microsoft.com/learning/mcp/mcad/requirements.mspx"&gt;&lt;br /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;MCTS: .NET Framework 2.0 Web Applications&lt;br /&gt;&lt;a href="http://www.microsoft.com/learning/mcp/mcsd/requirementsdotnet.mspx"&gt;&lt;/a&gt;&lt;a href="http://www.microsoft.com/learning/mcp/mcts/distapps/default.mspx"&gt;http://www.microsoft.com/learning/mcp/mcts/webapps/default.mspx&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;MCPD: Enterprise Applications Developer Requirements&lt;a href="http://www.microsoft.com/learning/mcp/mcpd/entapp/default.mspx"&gt;&lt;br /&gt;http://www.microsoft.com/learning/mcp/mcpd/entapp/default.mspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17507535-2858278495976152343?l=asonofmartha.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/2858278495976152343/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17507535&amp;postID=2858278495976152343' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/2858278495976152343'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/2858278495976152343'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/2007/09/path-to-mcpd-certification-revised.html' title='Path to MCPD Certification Revised!'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17507535.post-6569857936154578979</id><published>2007-09-13T14:14:00.001-04:00</published><updated>2007-09-13T14:17:59.593-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='biztalk'/><title type='text'>Migrating BizTalk 2004 (VS 2003) Solution to BizTalk 2006 (VS 2005)</title><content type='html'>While the BizTalk Server product team has done a commendable job of being able to migrate an already deployed BizTalk 2004 solution to BizTalk 2006 in-situ, there is definitely some effort in upgrading the Visual Studio solution itself such that subsequent deploys actually work. &lt;br&gt;&lt;br&gt;The situation is complicated by two things: the change in project definitions between VS 2003 and VS 2005, and of course the migration from .NET 1.1 to .NET 2.0 (there should be no complication by .NET 3.0 with BizTalk 2006 R2 as .NET  2.0 exists as-is in 3.0).&lt;br&gt;&lt;br&gt;Depending on the solution, some of the following items may not apply, and there may be other items not mentioned you will need to take care of (ie referencing deprecated classes, method overloads etc). &lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;ol&gt;&lt;li&gt;Migrate the solution to VS 2005 by simply opening the VS 2003 .sln file.&amp;nbsp; Complete the steps of the solution migration wizard.&amp;nbsp; This will generate a report of the items you may need to fix (esp deprecated classes) &lt;/li&gt;&lt;li&gt;Once in the solution, at the BizTalk Project level you will need to do the following:&lt;/li&gt;&lt;ol&gt;&lt;li&gt;If you have web references in your project, you will need to rebuild them.&lt;/li&gt;&lt;ol&gt;&lt;li&gt;Delete each web reference and re-add them with the same name &lt;/li&gt;&lt;li&gt;If you use Dynamic web references, ensure that property is selected&lt;/li&gt;&lt;li&gt;Add a reference to System.Configuration if it is not there already (the compiler will fail otherwise)&lt;/li&gt;&lt;/ol&gt;&lt;li&gt;Open the project&amp;#39;s properties &lt;/li&gt;&lt;ol&gt;&lt;li&gt;Assign a default BizTalk Configuration Database&lt;/li&gt;&lt;li&gt;Assign an Application Name &lt;br&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/ol&gt;&lt;li&gt;For each schema in your solution that uses promoted properties&lt;/li&gt;&lt;ol&gt;&lt;li&gt;Open the &amp;#39;Show Promotions&amp;#39; dialog.&amp;nbsp; This will rebuild the xsd&amp;#39;s code-behind (.cs) &lt;/li&gt;&lt;/ol&gt;&lt;li&gt;For each orchestration with a web-port&lt;/li&gt;&lt;ol&gt;&lt;li&gt;Delete the configured web port (since you regenerated the web reference)&lt;br&gt;&lt;/li&gt;&lt;li&gt;Re-add the web port with the same name, ensuring it is a Dynamic web port if necessary &lt;/li&gt;&lt;li&gt;Re-assign message types for messages defined in Orchestration Explorer&lt;br&gt;&lt;/li&gt;&lt;li&gt;Re-connect send/receive shapes if necessary&lt;/li&gt;&lt;/ol&gt;&lt;/ol&gt;You may find after your first build there are new warnings.&amp;nbsp; Some warnings have been added to assist in improving the performance/stability of your BizTalk solution.&amp;nbsp; The one most notable to my solution was the following: &lt;br&gt;&lt;br&gt;&lt;blockquote style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;" class="gmail_quote"&gt;Performance Warning: marking service &amp;#39;OrchestrationName&amp;#39; as a longrunning transaction is not necessary and incurs the performance penalty of an extra commit &lt;br&gt;&lt;/blockquote&gt;&lt;br&gt;For orchestrations where long-running was not necessary (ie do not contain send/receive pattern or other long-running transactions), I have since changed them to use Transaction Type of None.&amp;nbsp; Hopefully we will see a reduction of database chatter for these orchestrations when we benchmark the changes. &lt;br&gt;&lt;br&gt;Clearly the migration is not trivial, though hopefully yours is smooth and relatively quick.&lt;br&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17507535-6569857936154578979?l=asonofmartha.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/6569857936154578979/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17507535&amp;postID=6569857936154578979' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/6569857936154578979'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/6569857936154578979'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/2007/09/migrating-biztalk-2004-vs-2003-solution.html' title='Migrating BizTalk 2004 (VS 2003) Solution to BizTalk 2006 (VS 2005)'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17507535.post-6525336433876908324</id><published>2007-09-06T18:05:00.001-04:00</published><updated>2007-09-13T14:17:59.593-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='biztalk'/><title type='text'>XLANG/s error 10034 FileLoadException at _GetTypeByName, Issue and Resolution</title><content type='html'>&lt;span style="font-style: italic;"&gt;(For those who want the abstract, see `The Solution` below.)&lt;/span&gt;&lt;br&gt;&lt;br&gt;After performing a migration of a BizTalk 2004 project to BizTalk 2006 and running some unit tests, I ran into a very frustrating and at first misleading error in the application event log. &lt;br&gt;&lt;br&gt;Source: XLANG/s&lt;br&gt;Event ID: 10034&lt;br&gt;Type: Error&lt;br&gt;Category: None&lt;br&gt;&lt;br&gt;Uncaught exception (see the &amp;#39;inner exception&amp;#39; below) has suspended an instance of service &amp;#39; Bulloch.ProcessTrs(5146e3cd-3d88-4845-0795-4ccd1196bbe3)&amp;#39;.&lt;br&gt;The service instance will remain suspended until administratively resumed or terminated. &lt;br&gt;If resumed the instance will continue from its last persisted state and may re-throw the same unexpected exception. &lt;br&gt;InstanceId: 29059449-1b02-4e27-9b09-520ec69520a7&lt;br&gt;Shape name: Receive Trs File&lt;br&gt;ShapeId: f8763ddd-f0a3-41a9-9aee-4d13bc541cfa&lt;br&gt;Exception thrown from: segment 1, progress 3&lt;br&gt;Inner exception: The given assembly name or codebase was invalid. (Exception from HRESULT: 0x80131047) &lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br&gt;Exception type: FileLoadException&lt;br&gt;Source: mscorlib&lt;br&gt;Target Site: Void* _GetTypeByName(System.String, Boolean, Boolean, Boolean, System.Threading.StackCrawlMark ByRef, Boolean)&lt;br&gt;The following is a stack trace that identifies the location where the exception occured &lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp; at System.RuntimeTypeHandle._GetTypeByName(String name, Boolean throwOnError, Boolean ignoreCase, Boolean reflectionOnly, StackCrawlMark&amp;amp; stackMark, Boolean loadTypeFromPartialName)&lt;br&gt;&amp;nbsp;&amp;nbsp; at System.RuntimeTypeHandle.GetTypeByName  (String name, Boolean throwOnError, Boolean ignoreCase, Boolean reflectionOnly, StackCrawlMark&amp;amp; stackMark)&lt;br&gt;&amp;nbsp;&amp;nbsp; at System.RuntimeType.PrivateGetType(String typeName, Boolean throwOnError, Boolean ignoreCase, Boolean reflectionOnly, StackCrawlMark&amp;amp; stackMark) &lt;br&gt;&amp;nbsp;&amp;nbsp; at System.Type.GetType(String typeName)&lt;br&gt;&amp;nbsp;&amp;nbsp; at Microsoft.XLANGs.Core.XMessage._verifyPublisherSchema()&lt;br&gt;&amp;nbsp;&amp;nbsp; at Microsoft.XLANGs.Core.XMessage.FetchProperties()&lt;br&gt;&amp;nbsp;&amp;nbsp; at Microsoft.BizTalk.XLANGs.BTXEngine.BTXPortBase.ReceiveMessage  (Int32 iOperation, Envelope env, XLANGMessage msg, Correlation[] initCorrelations, Context cxt, Segment s)&lt;br&gt;&amp;nbsp;&amp;nbsp; at Bulloch.ProcessTrx.segment1(StopConditions stopOn)&lt;br&gt;&amp;nbsp;&amp;nbsp; at Microsoft.XLANGs.Core.SegmentScheduler.RunASegment  (Segment s, StopConditions stopCond, Exception&amp;amp; exp)&lt;br&gt;&lt;br&gt;My first thought was (due to the FileLoadException) was that an assembly couldn&amp;#39;t be found and gave myself a crash course in debugging .NET assembly loading (the Fusion Log viewer is very useful. See a good explanation  &lt;a href="http://detritus.blogs.com/lycangeek/2005/03/in_previous_pos.html"&gt;here&lt;/a&gt;).&amp;nbsp; Sadly, this did not help.&amp;nbsp; &lt;br&gt;&lt;br&gt;After fearing a breaking change in the BizTalk engine (I was using the R2 Beta), I started again from first principles, first trying to trace the exception stack using Lutz Roeder&amp;#39;s  &lt;a href="http://www.aisto.com/roeder/dotnet/"&gt;.NET Reflector&lt;/a&gt;.&amp;nbsp; This triggered the first critical link: the orchestration is failing on the Receive shape, confirmed by the stack trace referring to the method ReceiveMessage() in the XLANG/s engine.&amp;nbsp; I knew the subscription was fine, as it triggered the orchestration, but it seemed to have difficulty loading the message instance itself.&amp;nbsp; The message body looked fine and so I started to look at the message context.&amp;nbsp; Looking at the property SchemaStrongName, I looked at the description: &lt;br&gt;&lt;br&gt;&lt;div style="margin-left: 40px;"&gt;&amp;quot;SchemaStrongName&amp;quot; is not a promoted property.&amp;nbsp; Such Properties can be used for message tracking and can be referenced by components (e.g. from Orchestration), but they are not used for routing. &lt;br&gt;&lt;/div&gt;&lt;br&gt;Working on this lead, I looked at the strong name of the schema that was deployed in the Schema node of the BizTalk application.&amp;nbsp; Sure enough, it didn&amp;#39;t match.&amp;nbsp; Consequently, the orchestration subscription kicked off a new orchestration instance, but when the engine tried to load the message instance by type name (ie its strong name) it failed. &lt;br&gt;&lt;br&gt;First of all, I had been using a custom file disassembler to build the original message and in hindsight, this should have been one of the first places I looked.&amp;nbsp; In the custom pipeline component, I was manually setting the value of SchemaStrongName.&amp;nbsp; The assembly&amp;#39;s strong name changed when I built the new project because I started to use a new strong name key, thus changing the PublicKeyToken part of the strong name. &lt;br&gt;&lt;br&gt;Second of all, and perhaps rather mysterious, is that the original code (which had been functioning in BizTalk 2004) used a different format for the SchemaStrongName string.&amp;nbsp; Strong names for schemas should be in this format: &lt;br&gt;Fully.Qualified.SchemaName, Fully.Qualified.AssemblyName, Version=x.x.x.x, Culture=neutral, PublicKeyToken=XXXXXXXXXXXXXXXXXX&lt;br&gt;whereas the original code simply used the format&lt;br&gt;Fully.Qualified.AssemblyName, Version= x.x.x.x, Culture=neutral, PublicKeyToken=XXXXXXXXXXXXXXXXXX&lt;br&gt;&lt;br&gt;Beats me as to why it worked in BTS 2004, but the good news is I found the solution.&lt;br&gt;&lt;br&gt;&lt;span style="font-weight: bold;"&gt;The Solution&lt;/span&gt;&lt;br&gt;&lt;br&gt;If using custom file disassemblers where you manually assign the SchemaStrongName property, ensure it always matches the complete schema strong name of the deployed schema as shown in the BizTalk Administration Console, otherwise you will get an XLANGs error indicating a FileLoadException. &lt;br&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17507535-6525336433876908324?l=asonofmartha.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/6525336433876908324/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17507535&amp;postID=6525336433876908324' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/6525336433876908324'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/6525336433876908324'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/2007/09/xlangs-error-10034-fileloadexception-at.html' title='XLANG/s error 10034 FileLoadException at _GetTypeByName, Issue and Resolution'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17507535.post-9039126694715682755</id><published>2007-09-05T10:15:00.001-04:00</published><updated>2007-09-17T15:28:33.791-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.net'/><category scheme='http://www.blogger.com/atom/ns#' term='certification'/><category scheme='http://www.blogger.com/atom/ns#' term='microsoft'/><title type='text'>Path to MCPD Certification Demystified</title><content type='html'>Update Sept 17, 2007: &lt;a href="http://asonofmartha.blogspot.com/2007/09/path-to-mcpd-certification-revised.html"&gt;[See updated Path to MCPD post here]&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I don't know about you, but I found it a bit unclear at first glance of what the best route to each MCP certification and what the 'hierarchy' is.  I have had to infer as much by the number of exams and which certs were esssentially pre-reqs for others.&lt;br /&gt;&lt;br /&gt;Here is the plan I have developed that (AFAIK) is the shortest path to MCPD (measured by number of exams written) while maximizing the number of intermediate certifications.  Exams to be written in order:&lt;br /&gt;&lt;br /&gt;&lt;div style="direction: ltr;"&gt;  &lt;table valign="top" style="border: 1pt solid rgb(163, 163, 163); direction: ltr; border-collapse: collapse; width: 343px; height: 259px;" border="1" cellpadding="0" cellspacing="0"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td style="border: 1pt solid rgb(163, 163, 163); padding: 4pt; vertical-align: top; width: 0.6673in;"&gt;   &lt;p style="margin: 0in; font-family: Calibri; font-size: 11pt;" lang="en-CA"&gt;Exam&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid rgb(163, 163, 163); padding: 4pt; vertical-align: top; width: 1.6145in;"&gt;   &lt;p style="margin: 0in; font-family: Calibri; font-size: 11pt;" lang="en-CA"&gt;Certification   Awarded &lt;/p&gt;   &lt;/td&gt;     &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="border: 1pt solid rgb(163, 163, 163); padding: 4pt; vertical-align: top; width: 0.6673in;"&gt;   &lt;p style="margin: 0in; font-family: Calibri; font-size: 11pt;" lang="en-CA"&gt;70-235&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid rgb(163, 163, 163); padding: 4pt; vertical-align: top; width: 1.6145in;"&gt;   &lt;p style="margin: 0in; font-weight: bold; font-family: Calibri; font-size: 11pt;" lang="en-CA"&gt;MCTS (BizTalk)&lt;/p&gt;   &lt;/td&gt;     &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="border: 1pt solid rgb(163, 163, 163); padding: 4pt; vertical-align: top; width: 0.6673in;"&gt;   &lt;p style="margin: 0in; font-family: Calibri; font-size: 11pt;" lang="en-CA"&gt;70-320&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid rgb(163, 163, 163); padding: 4pt; vertical-align: top; width: 1.6145in;"&gt;   &lt;p style="margin: 0in; font-family: Calibri; font-size: 11pt;" lang="en-CA"&gt; &lt;/p&gt;&lt;br /&gt;&lt;/td&gt;     &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="border: 1pt solid rgb(163, 163, 163); padding: 4pt; vertical-align: top; width: 0.6673in;"&gt;   &lt;p style="margin: 0in; font-family: Calibri; font-size: 11pt;" lang="en-CA"&gt;70-315&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid rgb(163, 163, 163); padding: 4pt; vertical-align: top; width: 1.6145in;"&gt;   &lt;p style="margin: 0in; font-weight: bold; font-family: Calibri; font-size: 11pt;" lang="en-CA"&gt;MCAD&lt;/p&gt;   &lt;/td&gt;     &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="border: 1pt solid rgb(163, 163, 163); padding: 4pt; vertical-align: top; width: 0.6673in;"&gt;   &lt;p style="margin: 0in; font-family: Calibri; font-size: 11pt;" lang="en-CA"&gt;70-316&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid rgb(163, 163, 163); padding: 4pt; vertical-align: top; width: 1.6145in;"&gt;   &lt;p style="margin: 0in; font-family: Calibri; font-size: 11pt;" lang="en-CA"&gt; &lt;/p&gt;&lt;br /&gt;&lt;/td&gt;     &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="border: 1pt solid rgb(163, 163, 163); padding: 4pt; vertical-align: top; width: 0.6673in;"&gt;   &lt;p style="margin: 0in; font-family: Calibri; font-size: 11pt;" lang="en-CA"&gt;70-300&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid rgb(163, 163, 163); padding: 4pt; vertical-align: top; width: 1.6145in;"&gt;   &lt;p style="margin: 0in; font-weight: bold; font-family: Calibri; font-size: 11pt;" lang="en-CA"&gt;MCSD for Microsoft .NET&lt;br /&gt;&lt;/p&gt;   &lt;/td&gt;     &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="border: 1pt solid rgb(163, 163, 163); padding: 4pt; vertical-align: top; width: 0.6673in;"&gt;   &lt;p style="margin: 0in; font-family: Calibri; font-size: 11pt;" lang="en-CA"&gt;70-553&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid rgb(163, 163, 163); padding: 4pt; vertical-align: top; width: 1.6145in;"&gt;   &lt;p style="margin: 0in; font-family: Calibri; font-size: 11pt;" lang="en-CA"&gt; &lt;/p&gt;&lt;br /&gt;&lt;/td&gt;     &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="border: 1pt solid rgb(163, 163, 163); padding: 4pt; vertical-align: top; width: 0.6673in;"&gt;   &lt;p style="margin: 0in; font-family: Calibri; font-size: 11pt;" lang="en-CA"&gt;70-554&lt;/p&gt;   &lt;/td&gt;   &lt;td style="border: 1pt solid rgb(163, 163, 163); padding: 4pt; vertical-align: top; width: 1.6145in;"&gt;   &lt;p style="margin: 0in; font-weight: bold; font-family: Calibri; font-size: 11pt;" lang="en-CA"&gt;MCPD: Enterprise Applications Developer&lt;br /&gt;&lt;/p&gt;   &lt;/td&gt;     &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;/div&gt;&lt;br /&gt;I already have the MCTS (BizTalk).  As of now I am setting a goal of writing an exam every two months, which if I follow will make me MCPD in one year's time.  Wish me luck!&lt;br /&gt;&lt;br /&gt;Certification requirements:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;MCTS (BizTalk) Requirements&lt;br /&gt;&lt;a href="http://www.microsoft.com/learning/mcp/mcts/biztalk/default.mspx"&gt;http://www.microsoft.com/learning/mcp/mcts/biztalk/default.mspx&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;MCAD Requirements&lt;a href="http://www.microsoft.com/learning/mcp/mcad/requirements.mspx"&gt;&lt;br /&gt;http://www.microsoft.com/learning/mcp/mcad/requirements.mspx&lt;br /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;MCSD for Microsoft .NET Requirements&lt;br /&gt;&lt;a href="http://www.microsoft.com/learning/mcp/mcsd/requirementsdotnet.mspx"&gt;http://www.microsoft.com/learning/mcp/mcsd/requirementsdotnet.mspx&lt;/a&gt;&lt;/li&gt;&lt;li&gt;MCPD: Enterprise Applications Developer Requirements&lt;a href="http://www.microsoft.com/learning/mcp/mcpd/entapp/default.mspx"&gt;&lt;br /&gt;http://www.microsoft.com/learning/mcp/mcpd/entapp/default.mspx&lt;/a&gt;&lt;br /&gt;If you are a Microsoft Certified Solutions Developer (MCSD) on Microsoft .NET, you can upgrade to the MCPD: Enterprise Applications Developer certification by taking two upgrade exams. By passing these upgrade exams you will also automatically obtain all three of the MCTS prerequisites.&lt;/li&gt;&lt;/ul&gt;                  Exams:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;  &lt;p style="margin: 0in; font-family: Calibri; font-size: 11pt;" lang="en-CA"&gt;70-235&lt;/p&gt;  &lt;p   style="margin: 0in; font-weight: bold;font-family:Calibri;font-size:8pt;"&gt;&lt;span style="font-size:85%;"&gt;TS: Developing Business Process and Integration Solutions Using Microsoft BizTalk Server&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;  &lt;p style="margin: 0in; font-family: Calibri; font-size: 11pt;" lang="en-CA"&gt;&lt;a href="http://www.microsoft.com/learning/exams/70-235.mspx"&gt;http://www.microsoft.com/learning/exams/70-235.mspx&lt;/a&gt;&lt;/p&gt;  &lt;/li&gt;&lt;li&gt;  &lt;p style="margin: 0in; font-family: Calibri; font-size: 11pt;" lang="en-CA"&gt;70-320&lt;/p&gt;  &lt;p style="margin: 0in; font-weight: bold; font-family: Calibri; font-size: 9pt;"&gt;Developing XML Web Services and Server Components with Microsoft Visual C# .NET and the Microsoft .NET Framework&lt;/p&gt;  &lt;p style="margin: 0in; font-family: Calibri; font-size: 11pt;" lang="en-CA"&gt;&lt;a href="http://www.microsoft.com/learning/exams/70-320.mspx"&gt;http://www.microsoft.com/learning/exams/70-320.mspx&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;  &lt;p style="margin: 0in; font-family: Calibri; font-size: 11pt;" lang="en-CA"&gt;70-315&lt;/p&gt;  &lt;p style="margin: 0in; font-weight: bold; font-family: Calibri; font-size: 10pt;"&gt;Developing and Implementing Web Applications with Microsoft Visual C# .NET and Microsoft Visual Studio .NET&lt;/p&gt;  &lt;p style="margin: 0in; font-family: Calibri; font-size: 11pt;" lang="en-CA"&gt;&lt;a href="http://www.microsoft.com/learning/exams/70-315.mspx"&gt;http://www.microsoft.com/learning/exams/70-315.mspx&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;  &lt;p style="margin: 0in; font-family: Calibri; font-size: 11pt;" lang="en-CA"&gt;70-316&lt;/p&gt;  &lt;p style="margin: 0in; font-weight: bold; font-family: Calibri; font-size: 9pt;"&gt;Developing and Implementing Windows-based Applications with Microsoft Visual C# .NET and Microsoft Visual Studio .NET&lt;/p&gt;  &lt;p style="margin: 0in; font-family: Calibri; font-size: 11pt;" lang="en-CA"&gt;&lt;a href="http://www.microsoft.com/learning/exams/70-316.mspx"&gt;http://www.microsoft.com/learning/exams/70-316.mspx&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;  &lt;p style="margin: 0in; font-family: Calibri; font-size: 11pt;" lang="en-CA"&gt;70-300&lt;/p&gt;  &lt;p style="margin: 0in; font-weight: bold; font-family: Calibri; font-size: 9pt;"&gt;Analyzing Requirements and Defining Microsoft .NET Solution Architectures&lt;/p&gt;  &lt;p style="margin: 0in; font-family: Calibri; font-size: 11pt;" lang="en-CA"&gt;&lt;a href="http://www.microsoft.com/learning/exams/70-300.mspx"&gt;http://www.microsoft.com/learning/exams/70-300.mspx&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;  &lt;p style="margin: 0in; font-family: Calibri; font-size: 11pt;" lang="en-CA"&gt;70-553&lt;/p&gt;  &lt;p   style="margin: 0in; font-weight: bold;font-family:Calibri;font-size:8pt;"&gt;&lt;span style="font-size:85%;"&gt;UPGRADE: MCSD Microsoft .NET Skills to MCPD Enterprise Application Developer by Using the Microsoft .NET Framework: Part 1&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin: 0in; font-family: Calibri; font-size: 11pt;" lang="en-CA"&gt;&lt;a href="http://www.microsoft.com/learning/exams/70-553.mspx"&gt;http://www.microsoft.com/learning/exams/70-553.mspx&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;&lt;li&gt;  &lt;p style="margin: 0in; font-family: Calibri; font-size: 11pt;" lang="en-CA"&gt;70-554&lt;/p&gt;  &lt;p   style="margin: 0in; font-weight: bold;font-family:Calibri;font-size:8pt;"&gt;&lt;span style="font-size:85%;"&gt;UPGRADE: MCSD Microsoft .NET Skills to MCPD Enterprise Application Developer by Using the Microsoft .NET Framework: Part 2&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin: 0in; font-family: Calibri; font-size: 11pt;" lang="en-CA"&gt;&lt;a href="http://www.microsoft.com/learning/exams/70-554.mspx"&gt;http://www.microsoft.com/learning/exams/70-554.mspx&lt;/a&gt;&lt;/p&gt;  &lt;/li&gt;&lt;/ul&gt;    Of course, feel free to substitute any other MCTS to begin with (most of which require two exams) and the Visual Basic .NET variants if necessary for your own needs :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17507535-9039126694715682755?l=asonofmartha.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/9039126694715682755/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17507535&amp;postID=9039126694715682755' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/9039126694715682755'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/9039126694715682755'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/2007/09/path-to-mcpd-certification-demystified.html' title='Path to MCPD Certification Demystified'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17507535.post-4222702502701490332</id><published>2007-01-29T13:32:00.001-05:00</published><updated>2007-07-25T10:52:22.076-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vista'/><title type='text'>Vista Transformation Pack</title><content type='html'>Haha!  I'm so cheap I might actually download this thing. Transform your Windows XP to appear like Vista!&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.windowsxlive.net/?page_id=15"&gt;http://www.windowsxlive.net/?page_id=15&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.download.com/Vista-Transformation-Pack/3000-2086_4-10631174.html?tag=tab_pub"&gt; http://www.download.com/Vista-Transformation-Pack/3000-2086_4-10631174.html?tag=tab_pub&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.windowsxlive.net/screenshots/vtp/desktop.jpg"&gt;&lt;br /&gt;[Screenshot] &lt;/a&gt;&lt;a href="http://www.windowsxlive.net/screenshots/vtp/desktop.jpg"&gt; &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;It will avoid the initial software compatibility issues too, of which I am to be a victim:&lt;br /&gt;&lt;a href="http://faq.quickensoftware.ca/detail.php?qbid=QK996&amp;amp;product=323&amp;buid=QK&amp;amp;cat=General"&gt;http://faq.quickensoftware.ca/detail.php?qbid=QK996&amp;amp;product=323&amp;buid=QK&amp;amp;cat=General &lt;/a&gt;&lt;br /&gt;Quicken appears to have avoided compliance since Windows XP.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17507535-4222702502701490332?l=asonofmartha.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/4222702502701490332/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17507535&amp;postID=4222702502701490332' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/4222702502701490332'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/4222702502701490332'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/2007/01/vista-transformation-pack.html' title='Vista Transformation Pack'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17507535.post-3181053010909637776</id><published>2006-11-22T14:44:00.000-05:00</published><updated>2006-11-23T17:51:16.748-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='books'/><category scheme='http://www.blogger.com/atom/ns#' term='biztalk'/><title type='text'>Pro BizTalk 2006</title><content type='html'>Having recently finished George Dunphy's book &lt;em&gt;Pro BizTalk 2006&lt;/em&gt; I thought it was worth writing a review for it on the Chapters/Indigo site, especially since no one has yet reviewed it!  As of this writing, the review has not been posted, so here is the body of it below.&lt;br /&gt;&lt;br /&gt;[Edit Nov 23 5:50pm] The review has now been posted! Except they stripped all formatting for some reason...&lt;br /&gt;&lt;br /&gt;Link to book on Chapters/Indigo Website:&lt;br /&gt;&lt;a href="http://www.chapters.indigo.ca/books/item/books-978159059699/0/Pro+Biztalk+2006"&gt;http://www.chapters.indigo.ca/books/item/books-978159059699/0/Pro+Biztalk+2006&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;***** (Five Stars)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;This book is a great resource for the intermediate to advanced BizTalk user.  While the Microsoft team has done a commendable job of refining the documentation for BizTalk Server (compared to 2004), there continues to be many voids with respect to best practices and practical guidance around the tool in large enterprise-class deployments. &lt;br /&gt;&lt;br /&gt;While the primary audience of this book is certainly the BizTalk developer, there is much to be gained for the solution architect and technology director.  In particular, there is a good breakdown of when to use each of the features included in BizTalk Server 2006 – often decisions about what feature to use and when are misinformed or happen late in the game.  There is also a great discussion on what it takes to realistically implement a BizTalk solution (time and resources required) as well as how to setup a robust development environment.  The core of the book does however demand a familiarity with the documentation shipped with the product. A new developer would be lost quite quickly, though I would encourage him or her to read this book after gaining some general knowledge and experience.&lt;br /&gt;&lt;br /&gt;Included in the authors' thorough descriptions of how to implement advanced integration concepts are many detailed examples and real-world code samples. The authors provide a frank analysis of the toolset, highlighting both its strengths and weaknesses with a view to pragmatism; if something cannot be done or is unsupported in BizTalk, the authors provide guidance as to how best to solve the problem.  Further, if there are multiple ways of achieving the same thing, the costs and benefits of differing approaches are provided ( i.e. pipelines versus orchestration).&lt;br /&gt;&lt;br /&gt;In many of the discussions in Pro BizTalk 2006, for better or worse, the authors point out the differences between versions 2004 and 2006.  While this is very useful for the developer with considerable experience in BizTalk 2004, it may be meaningless or confusing to those who are being initiated with version 2006.  Though the book was written for readers with experience (read experience with BizTalk 2004) this point is not moot as developers without that context will still (and should) undoubtedly buy this book. For those like myself that are upgrading their skills from 2004, this book will no doubt give the reader many moments of "If only I had that feature!" and may even spur thoughts on how to re-architect their existing 2004 solutions!&lt;br /&gt;&lt;br /&gt;Some of the most valuable sections for myself included the following: a thorough description of the new performance characteristics and configuration variables; complete sample code for creating several reusable pipeline components ( i.e. zip compression, PGP encryption); many examples of implementing messaging patterns in BizTalk; and solid details on monitoring the application using WMI events and tools like Microsoft Operations Manager.&lt;br /&gt;&lt;br /&gt;While the book does go into detail on the new install/deploy features of BTS2006 (such as MSI files, btstask.exe) I would like to have seen some discussion on new tools like MSBuild, how to implement continuous integration scenarios, or the automation of deployment to one or more environments.  There is also little discussion on the advanced aspects of Business Activity Monitoring, a feature which I believe is greatly underused and not accounted for in the design process early enough.&lt;br /&gt;&lt;br /&gt;No matter what the reader's role in integration projects, whether he or she is simply migrating from 2004 or building a new integration practice around BizTalk Server 2006, this book is a must-have.  Every BizTalk developer will learn something from this book and should read it, especially in light of the scarcity of good literature on this now mature, yet occasionally overwhelming, product.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17507535-3181053010909637776?l=asonofmartha.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/3181053010909637776/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17507535&amp;postID=3181053010909637776' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/3181053010909637776'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/3181053010909637776'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/2006/11/pro-biztalk-2006.html' title='Pro BizTalk 2006'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17507535.post-352783973505730348</id><published>2006-10-16T12:17:00.001-04:00</published><updated>2006-10-16T12:17:08.369-04:00</updated><title type='text'>Microsoft-isms 2007</title><content type='html'>&lt;div&gt;Throughout the conference, I heard a few phrases and pronunciations that seem to be used by Microsoft as well as a number of the product partners there.&amp;nbsp; As is often the case, we will no doubt be using these phrases ourselves within a matter of months and not think about them a second time. &lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt;&lt;strong&gt;v.Next()&lt;/strong&gt;&lt;/div&gt; &lt;div&gt;This phrase was used by many presenters to talk about &lt;em&gt;the next version&lt;/em&gt;, or whatever was coming in the future.&amp;nbsp; Heh, clever :)&amp;nbsp; I guess software manufacturers are moving away from incremental naming schemes, this is more accurate than  &lt;em&gt;version++&lt;/em&gt;.&lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt;&lt;strong&gt;dub *&lt;/strong&gt;&lt;/div&gt; &lt;div&gt;Since it is apparently too time-consuming to say &amp;quot;double-ewe&amp;quot;, the new components of .NET 3.0 are cited as &lt;em&gt;dub-eff&lt;/em&gt; (WF), &lt;em&gt;dub-see-eff&lt;/em&gt; (WCF)&lt;em&gt;, &lt;/em&gt;and &lt;em&gt;dub-pea-eff&lt;/em&gt;, (WPF).&lt;/div&gt;  &lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt;&lt;strong&gt;Connect&lt;/strong&gt;&lt;/div&gt; &lt;div&gt;Not a new word, but &lt;em&gt;the&lt;/em&gt; word at Microsoft come the new year.&amp;nbsp; Someone suggested an MS&amp;nbsp;marketing exec believes MSFT can &lt;u&gt;own the word connect&lt;/u&gt;.&amp;nbsp; No doubt, we will see this word peppered in every marketing campaign next year, from Dynamics, Office, to all Server-based products.&amp;nbsp; While arguably inane, to MSs credit, the technology demonstrated this past week did indicate a culmination in their efforts towards interop/integration of all MS products. &lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt;As a side note, there is apparently to be a large public&amp;nbsp;marketing campaign for BizTalk Server 2006, the scale of the recent Dynamics campaign.&amp;nbsp; I don't know how accurate this statement is, but if it is true, we may see a large increase in demand from customers. &lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17507535-352783973505730348?l=asonofmartha.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/352783973505730348/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17507535&amp;postID=352783973505730348' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/352783973505730348'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/352783973505730348'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/2006/10/microsoft-isms-2007.html' title='Microsoft-isms 2007'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17507535.post-115998140937163401</id><published>2006-10-04T13:03:00.000-04:00</published><updated>2006-10-04T13:03:29.386-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='office'/><category scheme='http://www.blogger.com/atom/ns#' term='biztalk'/><category scheme='http://www.blogger.com/atom/ns#' term='visio'/><title type='text'>Cool things in Visio 2007</title><content type='html'>Visio 2007 will obviously host many new features including new stencils, shapes, an improved "auto-connect" system.  What is most intriguing is the focus on connecting a diagram (particularly Business Process Diagram)&lt;br /&gt;&lt;br /&gt;By defining a data connection to a diagram and respective shapes, you can pull visual information about the analysis for a business process.  So if you model a BP in visio, and then collect information about that BP in, say, Excel or Access, you can connect the two.  Say for each BP step you have collected metrics on cost, average duration, total resources required etc, once connected you can have visual representations of each of those metrics tied to each process shape and thus have a bird's eye view of the BP, quickly identifying the targets of improvement.&lt;br /&gt;&lt;br /&gt;They introduce the notion of a Pivot Diagram too which looks like it could be a replacement of Pivot Tables (for some applications).  Taking your data-linked business process shapes, you can drill down into those same metrics using the familiar concepts of dimensions and data items.  Very appealing to a potential customer.&lt;br /&gt;&lt;br /&gt;Finally, using a partner tool, they demonstrated how you can tie Visio into BizTalk &lt;em&gt;in both directions&lt;/em&gt;.  The analyst develops the BP model in visio, exports it to a BizTalk orchestration (using XLANGs) at which point both developer and analyst can collaborate on essentially the same artifact.  Changes to the process diagram, once exported, are reflected in the BTS Orchestration.  Though they did not have time to demonstrate this piece, once deployed and BAM is in place, those metrics defined in BAM are then brought back into the BP model to update the metrics displayed there.  Very slick.  I wouldn't be surprised if this partner tool is purchased by Microsoft or otherwise bundled into post 2007 releases.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17507535-115998140937163401?l=asonofmartha.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/115998140937163401/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17507535&amp;postID=115998140937163401' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/115998140937163401'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/115998140937163401'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/2006/10/cool-things-in-visio-2007.html' title='Cool things in Visio 2007'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17507535.post-115998038034006267</id><published>2006-10-04T12:46:00.000-04:00</published><updated>2006-10-04T12:46:20.423-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='bpm'/><category scheme='http://www.blogger.com/atom/ns#' term='.net'/><category scheme='http://www.blogger.com/atom/ns#' term='office'/><category scheme='http://www.blogger.com/atom/ns#' term='soa'/><title type='text'>SOA and BPM Conference Day One Summary</title><content type='html'>Some interesting things came out of yesterday's sessions, particularly around Office 2007 and other 2k7 releases:&lt;br /&gt;&lt;br /&gt;To clarify:&lt;br /&gt;.NET 3.0 (formerly WinFX) is the amalgamation of .NET 2.0, Windows Communication Foundation (Formerly Indigo), Windows Workflow Foundation (WF), Windows Presentation Foundation (formerly Avalon), Windows Cardspace. &lt;br /&gt;&lt;br /&gt;A new tool called Office Sharepoint Designer allows the information worker to design workflow that will be 'run' on the WF (apparently pronounced dub-eff).  Instead of a visual tool like the orchestration designer, this will be based on the Office Rules Wizard allowing the IW to determine the workflow using a set of rules.&lt;br /&gt;&lt;br /&gt;Useful links for SOA:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.microsoft.com/architecture"&gt;www.microsoft.com/architecture&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.microsoft.com/practices"&gt;www.microsoft.com/practices&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.microsoft.com/webservices"&gt;www.microsoft.com/webservices&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The Architecture Journal&lt;br /&gt;&lt;a href="http://www.architecturejournal.net"&gt;www.architecturejournal.net&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;HP is doing some great benchmarking and performance analysis of BizTalk Server 2006 as well as creating reference architectures to help answer customer questions like "how well does BizTalk perform?".  They have sizers as well, for determining what architecture/license structure will be necessary given a set of usage/volume requirements.  As yet, they do not provide one for BizTalk, but it will come soon.&lt;br /&gt;&lt;div&gt;&lt;a href="http://www.hp.com/solutions/microsoft/biztalk"&gt;www.hp.com/solutions/microsoft/biztalk&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;a href="http://www.hp.com/go/activeanswers"&gt;www.hp.com/go/activeanswers&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.hp.com/dspp"&gt;www.hp.com/dspp&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17507535-115998038034006267?l=asonofmartha.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/115998038034006267/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17507535&amp;postID=115998038034006267' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/115998038034006267'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/115998038034006267'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/2006/10/soa-and-bpm-conference-day-one-summary.html' title='SOA and BPM Conference Day One Summary'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17507535.post-115988865648064003</id><published>2006-10-03T11:17:00.000-04:00</published><updated>2006-10-03T11:17:37.800-04:00</updated><title type='text'>SOA Conference - Day One: Morning</title><content type='html'>&lt;div&gt;It's 8am PST and I've just eaten my hot breakfast outside the conference rooms.&amp;nbsp; I've been proven wrong.&amp;nbsp; Scrambled eggs at large functions aren't all bad.&amp;nbsp; These ones were pretty damn good.&lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt;The other nice thing about conferences is the free stuff.&amp;nbsp; No cheap highlighter, no dinky keychain.&amp;nbsp; All attendees get an mp3 player.&amp;nbsp; I'm not so much excited about the chance to play mp3s (and WMAs, can't forget that at MS) since my palm already does that, but the fact that it records.&amp;nbsp; Small feature but one I hope to take advantage of.&amp;nbsp; The manual says it has an FM tuner too, but it would appear not on this model. &lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt;On a real note, I have learned that all sessions will be recorded and all participants will receive a DVD compilation with all sessions.&amp;nbsp; So, I don't have to be upset that I am missing one or more concurrent sessions that tore my decision making.&amp;nbsp; Further, I can then share that with key people at the office (and of course saves me from the times I may have a faulty memory). &lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt;This should be fun!&lt;/div&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17507535-115988865648064003?l=asonofmartha.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/115988865648064003/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17507535&amp;postID=115988865648064003' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/115988865648064003'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/115988865648064003'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/2006/10/soa-conference-day-one-morning.html' title='SOA Conference - Day One: Morning'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17507535.post-115938292045063336</id><published>2006-09-27T14:48:00.000-04:00</published><updated>2006-09-27T14:48:40.456-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='bpm'/><category scheme='http://www.blogger.com/atom/ns#' term='biztalk'/><category scheme='http://www.blogger.com/atom/ns#' term='soa'/><title type='text'>Microsoft SOA And Business Process Conference</title><content type='html'>I will be attending a conference on SOA and BP hosted by the BizTalk Server group at Microsoft.  My first conference!  My first visit to Seattle!  It will be great fun and very interesting.  I will try to post a few times while I'm there.&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Trebuchet MS;font-size:100%;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Trebuchet MS';font-size:12;"  &gt;Microsoft SOA &amp;amp; Business Process Conference&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Trebuchet MS;font-size:100%;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Trebuchet MS';font-size:12;"  &gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style="font-family:Trebuchet MS;font-size:85%;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Trebuchet MS';font-size:10;"  &gt;Tuesday, October 3-6, 2006&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Trebuchet MS;font-size:85%;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Trebuchet MS';font-size:10;"  &gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;a href="https://fusion.ideaca.com/exchweb/bin/redir.asp?URL=http://www.impactevents.com/biztalkconference" target="_blank"&gt;&lt;span style="font-family:Trebuchet MS;font-size:85%;"&gt;www.impactevents.com/biztalkconference&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17507535-115938292045063336?l=asonofmartha.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/115938292045063336/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17507535&amp;postID=115938292045063336' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/115938292045063336'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/115938292045063336'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/2006/09/microsoft-soa-and-business-process.html' title='Microsoft SOA And Business Process Conference'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17507535.post-112860882381695964</id><published>2005-10-06T10:02:00.000-04:00</published><updated>2005-10-06T12:09:37.106-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='blogs'/><category scheme='http://www.blogger.com/atom/ns#' term='biztalk'/><title type='text'>My Favourites</title><content type='html'>First things first. Here's a list of resources I have used in the past that would likely be of use to anyone working with BizTalk Server 2004. I will add to this at times and make it sticky.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Blogs&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://blogs.msdn.com/scottwoo/"&gt;Scott Woodgate's Business Process, Integrtion and Workflow OutBursts&lt;/a&gt; &lt;span style="color:#ff0000;"&gt;*&lt;/span&gt;&lt;br /&gt;&lt;a href="http://geekswithblogs.net/asmith"&gt;BizTalk 101 - Back to Basics (Alan Smith)&lt;/a&gt;&lt;br /&gt;&lt;a href="http://blogs.msdn.com/luke"&gt;BizTalk ChalkTalk (Luke Nyswonger)&lt;/a&gt;&lt;br /&gt;&lt;a href="http://biztalkers.blogspot.com"&gt;BizTalkers (Tareq Muhammad)&lt;/a&gt;&lt;br /&gt;&lt;a href="http://weblogs.asp.net/jan"&gt;Jan Tielens' Bloggings [MVP]&lt;/a&gt;&lt;br /&gt;&lt;a href="http://blogs.msdn.com/kevinsmi"&gt;Kevin B Smith's WebLog&lt;/a&gt; &lt;span style="color:#ff0000;"&gt;*&lt;/span&gt;&lt;br /&gt;&lt;a href="http://www.traceofthought.net"&gt;Trace of Thought (Scott Colestock)&lt;/a&gt; &lt;span style="color:#ff0000;"&gt;*&lt;/span&gt;&lt;br /&gt;&lt;a href="http://biztalkwoes.blogspot.com"&gt;BizTalk 2004 Woes (Shane James)&lt;/a&gt;&lt;br /&gt;&lt;a href="http://blogs.msdn.com/biztalkperformance/"&gt;BizTalk Server Performance&lt;/a&gt; &lt;span style="color:#ff0000;"&gt;*&lt;/span&gt;&lt;br /&gt;&lt;a href="http://blogs.msdn.com/bpidcustomerresponseteam/default.aspx"&gt;BPID Customer Response Team's Blog&lt;/a&gt;&lt;br /&gt;&lt;a href="http://bencops.blogspot.com/"&gt;Ben Cops&lt;/a&gt;&lt;br /&gt;&lt;a href="http://hugorodgerbrown.blogspot.com/"&gt;Hugo Rodger-Brown&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Tools&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.traceofthought.net/CategoryView,category,Deployment%20Framework.aspx"&gt;Deployment Framework (Scott Colestock)&lt;/a&gt; &lt;span style="color:#ff0000;"&gt;*&lt;/span&gt;&lt;br /&gt;&lt;a href="http://www.gotdotnet.com/workspaces/workspace.aspx?id=992ca223-553c-475a-ac87-da7ae2c9016a"&gt;BizTalk 2004 Management Tool&lt;/a&gt;&lt;br /&gt;&lt;a href="http://blogs.msdn.com/kevinsmi/archive/2004/09/18/231259.aspx"&gt;Test Framework for Rapid Test Case Development&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.gotdotnet.com/Community/UserSamples/Details.aspx?SampleGuid=7e1d6b45-2c6e-48ad-9946-c18d29ff783f"&gt;BizTalk 2D Viewer (GotDotNet)&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.gotdotnet.com/workspaces/workspace.aspx?id=62d94220-c0e0-46d4-a2d6-85d3d911467a"&gt;BizTalkAutoDeploy (GotDotNet)&lt;/a&gt;&lt;br /&gt;&lt;a href="http://blogs.msdn.com/martywaz/archive/2005/06/14/429162.aspx"&gt;BizTalk Assembly Replication and Viewer&lt;/a&gt;&lt;br /&gt;&lt;a onmousedown="return clk(this.href,'res','1','')" href="http://www.gotdotnet.com/Workspaces/Workspace.aspx?id=41c1faa9-13a6-478b-af81-d87ca946a222"&gt;UK SDC BizTalk 2004 Documenter&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Concepts&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://blogs.msdn.com/luke/articles/category/7732.aspx"&gt;The Quickstart Guide to Learning BizTalk Server 2004&lt;/a&gt; &lt;span style="color:#ff0000;"&gt;*&lt;/span&gt;&lt;br /&gt;&lt;a id="_ctl0__ctl0__ctl0__ctl0_CategoryView__ctl0_postlist__ctl0_EntryItems__ctl0_PostTitle" href="http://blogs.msdn.com/luke/articles/241024.aspx"&gt;Troubleshooting Common Problems in a BizTalk Server 2004 Platform Installation&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.microsoft.com/belux/nl/msdn/community/columns/claessens/intro_bts2004.mspx"&gt;A Basic Introduction to Messaging with Microsoft BizTalk Server 2004&lt;/a&gt;&lt;br /&gt;&lt;a class="singleposttitle" id="viewpost.ascx_TitleUrl" href="http://geekswithblogs.net/toddu/archive/2004/09/25/11717.aspx"&gt;Operational Requirements - the less exciting stuff...&lt;/a&gt;&lt;br /&gt;&lt;a id="viewpost.ascx_TitleUrl" href="http://geekswithblogs.net/asmith/articles/18738.aspx"&gt;BizTalk Server - Modular Deployment&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Particulars&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.gotdotnet.com/workspaces/workspace.aspx?id=0dfb4f4e-d241-4bc8-8418-2c385d8e3eaa"&gt;The Bloggers Guide to BizTalk&lt;/a&gt;&lt;br /&gt;&lt;a href="http://blogs.msdn.com/gzunino/archive/2004/06/13/154819.aspx"&gt;Building A Custom Disassembling Pipeline Component&lt;/a&gt;&lt;br /&gt;&lt;a href="http://blogs.msdn.com/gzunino/archive/2004/07/01/171281.aspx"&gt;How to debug a BizTalk 2004 pipeline: tips and tricks&lt;/a&gt;&lt;br /&gt;&lt;a href="http://blogs.msdn.com/biztalk_core_engine/archive/2005/02/28/381700.aspx"&gt;Large messages in BizTalk 2004&lt;/a&gt;&lt;br /&gt;&lt;a class="singleposttitle" id="viewpost.ascx_TitleUrl" href="http://geekswithblogs.net/sthomas/archive/2004/12/12/17373.aspx"&gt;Debatching Options and Performance Considerations in BizTalk 2004&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Community&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;&lt;br /&gt;&lt;a href="http://www.btug.biz/"&gt;BTUG.biz - BizTalk User Group&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#ff0000;"&gt;*&lt;/span&gt;&lt;/strong&gt; Highly recommended&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17507535-112860882381695964?l=asonofmartha.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/112860882381695964/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17507535&amp;postID=112860882381695964' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/112860882381695964'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/112860882381695964'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/2005/10/my-favourites.html' title='My Favourites'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17507535.post-112860634455494232</id><published>2005-10-06T09:22:00.000-04:00</published><updated>2005-10-06T09:45:44.560-04:00</updated><title type='text'>My romance with BizTalk</title><content type='html'>It was January this year that I was asked to become familiar with BizTalk so that we could use it on one of the projects we are working on.  Little did I know that I would ultimately become the local expert in the technology (and I still consider myself a novice, really).&lt;br /&gt;&lt;br /&gt;Learning BizTalk Server 2004 has been quite a journey.  I got my first introduction by &lt;a href="http://biztalkwoes.blogspot.com/"&gt;my counterpart in Calgary&lt;/a&gt;.  Working alongside him and through my own discovery, I have seen that the key to learning BizTalk is not taking a course - it's consuming every blog, whitepaper, SDK you can get your hands on.  I owe a lot of my education to the internet.  BizTalk Server 2004 Unleashed is a fantastic resource for learning the concepts and performing straightforward implementations, but like any other book, falls short when it comes to customization, caveats, and all those other things you can only learn by doing (or &lt;em&gt;not&lt;/em&gt; doing).  Just &lt;a href="http://www.amazon.com/gp/product/customer-reviews/0672325985/ref=cm_cr_dp_pt/103-0213732-3248667?%5Fencoding=UTF8&amp;n=283155&amp;amp;s=books"&gt;read the reviews&lt;/a&gt; (ouch).&lt;br /&gt;&lt;br /&gt;I am now getting into the process of educating others on my team on the finer points of managing BTS and ultimately developing in it.  It's not easy.  So as I go I will be pointing out as many useful resources as possible.  Because I have only known the word BizTalk for 9 months, I don't claim to know everything there is about the product (few if any &lt;em&gt;could&lt;/em&gt; claim that anyhow), nor have I used the product in many different ways, but I have definitely learned lessons.  Some are pretty basic (embarassing even), but others challenge the limits of BizTalk.  And, the project I am working on is not done yet - there will no doubt be more problems to solve.  Let's get to it!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17507535-112860634455494232?l=asonofmartha.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/112860634455494232/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17507535&amp;postID=112860634455494232' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/112860634455494232'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/112860634455494232'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/2005/10/my-romance-with-biztalk.html' title='My romance with BizTalk'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-17507535.post-112854281109977286</id><published>2005-10-05T15:59:00.000-04:00</published><updated>2005-10-05T16:06:51.103-04:00</updated><title type='text'>Post Zero</title><content type='html'>Though I am notoriously bad at keeping such a thing current (sound familiar?), I believe it is my responsibility - nay duty - to start a technical blog.  My personal blog and livejournal have sufferred considerably, mostly due to the fact that I can't think of enough inanery with which to fill them.&lt;br /&gt;&lt;br /&gt;I look forward to publishing on a few topics based on my experiences and other observations.  These will hopefully include and certainly will not be limited to&lt;br /&gt;&lt;ul&gt;&lt;li&gt;.NET Framework&lt;/li&gt;&lt;li&gt;BizTalk Server 2004&lt;/li&gt;&lt;li&gt;Javascript&lt;/li&gt;&lt;li&gt;ASP.NET&lt;/li&gt;&lt;li&gt;Performance and Testing&lt;/li&gt;&lt;li&gt;Enterprise Integration&lt;/li&gt;&lt;li&gt;Patterns and Practices&lt;/li&gt;&lt;li&gt;Industry issues and trends&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Ambitious?  Yes.  Crazy?  Definitely.  &lt;/p&gt;&lt;p&gt;Wish me luck!  &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/17507535-112854281109977286?l=asonofmartha.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://asonofmartha.blogspot.com/feeds/112854281109977286/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=17507535&amp;postID=112854281109977286' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/112854281109977286'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/17507535/posts/default/112854281109977286'/><link rel='alternate' type='text/html' href='http://asonofmartha.blogspot.com/2005/10/post-zero.html' title='Post Zero'/><author><name>Benjamin</name><uri>http://www.blogger.com/profile/16897406462455570075</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_SQRilnyucRo/SeY6UASzY1I/AAAAAAAAGCQ/LX3m-WGGKiE/S220/ben.jpg'/></author><thr:total>0</thr:total></entry></feed>
