Archive for May, 2010

CodeMastery Conference Recap

Today I spoke on the WCF LOB SDK and I just wanted to say thanks for everybody who attended.
 
I was amazed by the low number of people who had built WCF custom bindings and how few people knew of ESBs within their company. Perhaps this trend was specific to the audience but interesting none the less. As promised, I am releasing the slides and sample SalesForceBinding created for my session. I am making a few tweaks to the SalesForceBinding but will be posting it here as a comment later this week.
 
 
— Update —
I fixed the links above. With the Office 2010 launch there is a new PPT viewer and all the urls for my presentations changed again.
 
Thanks!

, ,

3 Comments

BizTalk 2010 Beta Notes and Details

 
Initial Thoughts / Experience
 
I have been testing the BizTalk 2010 beta for about a week now and have been actually having pretty good success with it. I have configured all of the features successfully in the base install, setup the WCF LOB SDK beta, setup the BizTalk adapter pack, setup the ESB toolkit 2.1, and setup both the RFID server components and RFID mobile. The UDDI install on the BizTalk 2010 beta has also gone successfully. So the good news is that this beta is pretty stable in my experience. My environment includes Windows Server 2008 R1 (W2K8 R1), SQL 2008 R1, and VS 2010 RTM Premium. I wanted to mention a couple items for those people who are trying the 2010 beta bits based on the installs:
 
  • Start with a fresh VM if possible
  • Make sure you have uninstalled all pre-release .NET 4 bits such as the client profile and extended profile otherwise your VS 2010 application will not work properly. Ensure you have all of the .NET 4 RTM versions installed.
  • Make sure you are using VS 2010 RTM.
  • It is a good idea to uninstall the WCF LOB SDK from BizTalk 2009 before installing the WCF LOB SDK for BizTalk 2010. I had a failed install of the SDK for BizTalk 2010 when I did not uninstall the previous version of the WCF LOB SDK
  • I was able to get the Notification Services hotfixes from BizTalk 2009 to install correctly on BizTalk 2010. As always, with new versions of BizTalk, some of the hotfixes no longer work but fortunately these are working fine. Here is the URL for getting these: http://support.microsoft.com/hotfix/KBHotfix.aspx?kbnum=953752
  • Some of the features of the new BizTalk 2010 are meant to run from a CD. So you want to burn an ISO of the extracted files to see this. Make sure your ISO burner supports a format like ISO+JOILET because there are some very long file names in the extracted files.
  • (Cheesy tip #1): If you actually have to burn a CD in your ISO maker, you can remove the x64 folders from the extract for x86 target systems or vice versa to make all the files fit on a CD.
  • Once you create an ISO, check out the PartyMigrationTool folder in the root folder of the install media. It has an exe with the same name for migrating the BizTalk 2006 R2 or BizTalk 2009 parties to the new trading partner agreement and business profile format, new for 2010.
  • Do not try copying the PartyMigrationTool files from the CD to your VM or server – the config file pulls these using assembly redirects and it takes a lot more work to copy the file and all of its dependencies to get it to run correctly. You could alternately update the config for the tool to point to the corrected path to the MSI folder…

There are many new features to describe in BizTalk 2010. First of all, all of the improvements made with BizTalk 2006 R2 SP1 should be available in BizTalk 2010. I found the WCF extension behavior pop-up in the send/receive handlers for WCF-Custom to work and the certificate overrides for AS2 functionality is also working. I know some of these have been long awaited features that were not in BizTalk 2009. Here is a list of the features from R2 SP1 if you want to check on them: http://msdn.microsoft.com/en-us/library/ee532481(BTS.20).aspx.

Changes in BizTalk 2010
 
There is quite a bit of improved functionality as well as some new features as well. I will list out many of these features and then spend more time on some of them. Much of the documentation is now available in the beta. Please see http://www.microsoft.com/downloads/en/results.aspx?freetext=biztalk+2010&displaylang=en&stype=s_basic for a listing of downloads and documentation pieces. During BizTalk 2009 beta much of this was not available so a big kudos to the BizTalk documentation team for having this available with the beta!
 
Improvements
 
  • Platform realignment, now officially supported for W2K8 R2, compatible with SQL 2008 R2, VS 2010, SharePoint 2010
  • Updated BizTalk map VS extension – many new features such as copy/paste, easier to use interface for connecting lines, suggested mapping column hints, etc.
  • BizTalk admin console changes in the organization of parties through business profiles and agreements
  • Simplified console experience for host settings including new fields for many registry keys and config settings.
  • Support for using .NET 4 although not complete at this point
  • Many ESB Toolkit improvements.

One of the changes I am excited about is the way parties are handled within BizTalk 2010. One of the pain points for doing AS2 and EDI work in BizTalk has been the complexity of so many forms and screens for all of the many settings for the parties. The product group (PG) has been working on making all of this work more intuitive and has restructured both the party display in the BizTalk admin console and the layout of settings in the property pages.

Below you can see the new structure added to the admin console so you can classify more than one business profile (which represents the identifiers and settings for communications) for each organization:
 
 
For each business profile you can communication tabs based on message format (X12 or EDIFACT) or communication type (AS2). This is nice – you no longer are required to right-click on a party to get the AS2 or EDI settings :). The use of a tool strip in the UI is a good modernization of the party manager. Perhaps we will also see icons or other wizard links here in the future. The AS2 profile selection is shown below:
 
 
The EDI selection is shown below:
 
 
Agreements form the basis for describing message exchanges and the layout for managing these has become more intuitive. In BizTalk 2006 R2 or 2009 it easy to get mixed up about “Party as Sender” vs. “Party as Receiver” when you have many transactions that can go either way. The following shot shows some visual cues to help with this:
 
 
In general, the party configuration has been organized and I think you will appreciate the ease of use compared to previous versions of the party settings pages.
There are lots more improvements, be sure to download a copy of the beta and test it out! I will be sure to post more on gotchas and workarounds as I find them so check back here! Thanks!

, , ,

Leave a comment

BizTalk 2010 Public Beta Tomorrow

I just heard about this tonight that the public beta 1 for BizTalk 2010 will occur tomorrow based on Ofer Ashkenazi’s post at http://blogs.msdn.com/biztalk_server_team_blog/archive/2010/05/20/biztalk-server-2010-beta-availability-and-virtual-launch.aspx?utm_source=twitterfeed&utm_medium=twitter.  
 
There is an Application Infrastructure Virtual Launch event discussing various connected system technologies and BizTalk 2010 at http://www.appinfrastructure.com/ tomorrow starting at 8:30 Pacific Time. The clock on this website says it starts at 8:30 central time but this is pretty early for Redmond time so I would tune in at 10:30 central time.
 
I have been involved extensively in the pre-launch beta 1 so I am excited about helping the community embrace this new version of BizTalk.
 
Thanks,

,

1 Comment

BizTalk 2009 Incompatible with SQL 2008 R2

Introduction
 
After responding to a few community threads about BizTalk 2009 compatibility on W2K8 R2 and SQL 2008 R2, I decided to try an install with BizTalk 2009 and SQL 2008 R2 to see if I noticed any incompatibilities. I had not tried this combination before so I decided it was worth a few hours
of time to determine how well it worked.
 
I have already confirmed that BizTalk 2009 works fine on W2K8 R2 although this is not an officially supported configuration. On one of my client’s projects this is the environment configuration and it is running quite well. But on this specific project we are running SQL 2008 [R1]. Next are the steps I took to install everything.
If you have any questions about installing this configuration I recommend the BizTalk 2009 install guide. Most of the screenshots for SQL 2008 R1 look the same as for SQL 2008 R2.
 
Installation Steps
 
1. Used a W2K3 R2 SP2 base image to start out with. SQL 2008 R2 supports W2K3 so this was acceptable.
 
2. Installed SQL 2008 R2 November CTP. Since I had a copy of this version I used it although SQL 2008 R2 RTM was released to MSDN subscribers recently about a week ago (5/3/2010). I followed the directions at http://www.sqlcoffee.com/SQLServer2008_0013.htm which gives directions for the November CTP. 
  – I chose to uncheck SQL Replication, Fulltext indexing, and SQL Server Books Online.
 
3. Installed VS 2008
  – I chose to uncheck VB.NET, C++, and SQL Express.
 
4. Installed BizTalk 2009.
 
5. Configured BizTalk 2009.
When configuring BizTalk, it failed on the Group with the error:
 
Failed to create Management database “BizTalkMgmtDb” on server “BENC-NEWBASE”.
Error “0x80040E1D” occurred.
 
To try to get around the error, I tried the following things but was not successful:
– Enable TCP/IP, named pipes in SQL Configuration Manager.
 
I think the root of this problem is that the code used to create the BizTalkMgmtDb may be used a data type no longer supported in SQL 2008 R2.
 
Conclusion
 
Apparently SQL 2008 R2 is both not supported and not compatible with BizTalk 2009. This was a big surprise for me. After doing some digging I did find this post about compatibility: http://blogs.msdn.com/biztalkcpr/archive/2009/11/09/biztalk-09-and-sql-r2-not-supported-biztalk-09-and-project-references.aspx. It is hard to find because the naming is not full – I do not call it BizTalk 09 or Sql R2.
 
We will have to wait for BizTalk 2010 for SQL 2008 R2 support.

,

3 Comments

WCF LOB SDK Talk on May 26

I will be speaking at a Magenic sponsored mini conference called Code Mastery on May 26 2010. Here is a link to the site: http://codemastery.com/index.htm. Magenic is hosting a couple of these mini conferences in the regions we have offices. The site will be updated soon with more information on the sessions and speakers. It is a free event so bring a friend!
 
I will be talking about the WCF LOB SDK from both a BizTalk and general .NET user perspective. This is a technology that is fairly well known in the BizTalk community but almost completely unknown in the general .NET community. I give some introductory articles below but notice that almost everything is directly from Microsoft and on the heavily technical side. I will be reviewing some of these concepts but will also be approaching it from a practical perspective about how this technology would fit within the enterprise and how you might use it in your software projects.
 
Here are a couple of good links to get you started:
 
 
 
 
 
 

, ,

Leave a comment

How to Abort a Commerce Server Catalog Import

While working on a Commerce Server/BizTalk project I have encountered a workaround for when you are running a Commerce Server replace import. From BizTalk server we would kick off a large import of Commerce Server catalog records and occasionally need to run these in replace mode. Replace mode handles reorganizing the underlying data structures of the Commerce Server catalog. Incremental mode merely updates the data with supplemental information. These modes are documented here: http://msdn.microsoft.com/en-us/library/aa546041(CS.70).aspx.
 
We have found that replace mode runs quite a bit slower than incremental so we usually just run incremental. When the Commerce Server catalog columns or design changes we need to run a replace. A significant issue with the Commerce Server catalog adapter is that it does not allow you to do concurrent import execution for the same Commerce Server site. So usually if you start up a replace you wind up waiting for it to complete. Even if the BizTalk process stops, the Commerce Server process continues and keeps blocking subsequent imports. I had not been able to find any other way to abort an import except these steps:
 
If you want to force a stop of a Commerce Server import, do the following steps:
 
  • Stop the SQL Server instance hosting the Commerce Server catalog database
  • Run iisreset to refresh the process hosting the Commerce Server catalog web service.

Thanks,

, ,

Leave a comment

Failed to Enable constraints in Admin Console

I was having trouble on my DEV server today and got a failed to enable constraints error when trying to expand the Applications node. This is on a Windows Server 2008 R2, BizTalk 2009, SQL 2008 server with BizTalk running on a separate box than SQL but on a VM. I was running a heavy Commerce Server import process and the available memory was getting really low. Here is a screenshot of the error:
 
 
It was pretty worrisome when it happened because I was trying to get a big mission critical process running and it is hard to get much done without using the Admin console. I had reported this issue during the BizTalk 2009 beta but was unable to reproduce it again after the fixes were implemented so I assumed the issue was resolved. I think the problem becomes more likely to occur under low memory conditions.
 
I had seen Nick Heppelston’s post at http://www.modhul.com/tag/admin-console/ and wanted to post that his process worked fine for me. I stopped all of my BizTalk hosts from the Windows Service Control Manager and then stopped both the Distributed Transaction Coordinator (DTC) and the Windows Management Instrumentation (WMI) Windows services. I had to restart the BizTalk admin console in order to reload everything – there was not an automatic refresh. Nick had reported this as a fix for BizTalk 2006 so I wanted to confirm that this process worked successfully on BizTalk 2009 as well.
 
Thanks,

,

Leave a comment