BizTalk 2009 RTW (Release to World)

I just found out that the BizTalk 2009 release has been extended to the general public: http://seroter.wordpress.com/2009/04/27/quick-thoughts-on-formal-biztalk-2009-launch-today/. I have been posting on various issues with the RTM version. It looks like the 2009 install guides can now be found at

http://go.microsoft.com/fwlink/?LinkID=128383 – the link was reset and it connects successfully. Additionally, the install guides now mention ADOMD v10 so please stop using the Beta install guide – it has now been replaced. I will be posting here soon about whether the updated prerequisites CAB includes ADOMD v10 and some other details I have been working on from the RTM version. Interestingly, the MSDN downloadable version is still from 4/6/09 (when the RTM release occurred) so it does not look like there has been an updated build; just updates of the supporting files.

If I notice anything in the install guides or the other support files, I will be sure to post about it here.

Thanks,

BizTalk 2009 on Dev 10 Part 2

I was able to play with BizTalk 2009 Beta on Dev 10 a little more and had some advice. When I installed earlier, I had not seen that the Developer Tools and SDK was grayed out and this was the reason the .btproj extension had not been installed properly. I eventually realized that on the VS 2010 CTP VPC, VS 2008 BIDS did not have VS 2008 SP1 so this was required to get the BizTalk 2009 Beta VS extensions to install at all.

With the VS extensions for BizTalk installed correctly, I was still not able to open BizTalk 2009 projects using VS 2010. For some reason the VS extensions are just not being applied to VS 2010.

Here is my updated install order to get BizTalk to work with as much as possible:

  • Setup the VS 2010 CTP VPC using the RAR downloads
  • Remove the expiration using the VMC file configuration
  • Remove VS 2008 BIDS – an upgrade will not install properly
  • Install VS 2008 Full
  • Install VS 2008 SP1
  • Install BizTalk 2009 Beta or latest version available
  • Configure BizTalk 2009
  • Install Team Explorer for VS 2008 – Be careful – Team Explorer does not work with VS 2008 and VS 2010 open at the same time.
  • Team explorer for VS 2008 did connect fine to the TFS 2010 server though.So I still wanted to answer a few questions. I was able to add a BizTalk 2009 project to TFS 2010 through VS 2008 w/ Team Explorer 2008 and view the source code in VS 2010, I was just not able to open the BizTalk projects. Here is a screenshot from VS 2010 with the BizTalk files in source control in TFS 2010:

    So this is good because it means it is possible to upgrade to TFS 2010 without affecting BizTalk solutions. VS 2008 will just need to remain in order to keep editing BizTalk 2009 projects.

    The other question I had was whether a BizTalk 2009 project can reference a .NET 4.0 assembly. VS 2008 SP1 cannot create .NET 4.0 versioned projects, so the reference would have to be a GAC or file reference rather than a project reference. I created a .NET 4.0 assembly from VS 2010 and referenced some v4.0.11 assemblies and recompiled. Then I tried referencing the assembly in my BizTalk project in VS 2008. It looks like it is possible to reference a .NET 4 assembly from VS 2008 for a BizTalk project but I was unable to build it successfully. Here is the message I got when adding the reference:

    After trying to compile I realized it was not possible to reference a .NET 4 assembly from Visual Studio 2008 SP1 (yet). I also tried referencing an M project using the latest Oslo January CTP SDK and was not able to successfully.

    So the good news is that you can migrate your TFS investment ahead of BizTalk and the BizTalk files will still check-in and import successfully. My next task will be to see how well the new ALM features of BizTalk 2009 translate over to working on TFS 2010.

    Thanks,

    BizTalk 2009 on Dev 10 (VS 2010)

    Today I was working on a project for a client and was unsure about compatibility between Visual Studio 2010 and BizTalk 2009. BizTalk 2009 is going to be released soon and it seemed like a natural question to wonder if the VS 2010 / .NET 4 CTP (http://www.microsoft.com/downloads/details.aspx?FamilyId=922B4655-93D0-4476-BDA4-94CF5F8D4814&displaylang=en) would work with this. This CTP has been out for around 5 months but I had not had a chance to try the BizTalk 2009 install on it. I used the 2009 Beta install and got some mixed results. Here is the high-level results:
     
    • BizTalk 2009 Beta install on the VS 2010 CTP VPC installs the VS extensions into the VS 2008 BIDS shell (interestingly).
    • The BizTalk VS extensions do not show up inside of VS 2010
    • I tried opening a BizTalk Sample project in VS 2010 and it was able to convert the project but then could not open the .btproj file extension.
    • If you try to create a BizTalk project in VS 2008 BIDS, you get an error that project file type (.btproj) is not supported. The project type file is updated with BizTalk 2009 to be more of a C# format so I did not expect this to work because BIDS does not have the C# project file stuff anyway.
    • If you want to use BizTalk 2009 on the CTP VPC, you need to install a full version of VS 2008, so use the following install order:
      • Setup the VS 2010 CTP VPC using the RAR downloads
      • Remove the expiration using the VMC file configuration
      • Update VS 2008 to be a full version
      • Run the BizTalk 2009 install (latest version available)
    • The Oslo SDK extensions for VS work (although there are not built-in add file extensions for more than just .m files) in VS 2010 and show up in VS 2008 BIDS so it may be possible to reference an M project directly from a BizTalk 2009 project (will be checking on this soon).

    Some obvious questions I am wondering about are given below. I will be researching and checking on these more:

    • Does TFS 2010 check-in of projects work with the BizTalk 2009 extensions if the extensions do not show up in VS 2010?
    • Since the VS 2010 extensions do not work, can a BizTalk 2009 project reference a .NET 4 assembly?

    Thanks,

    Updated Cloud SDKs Out

    I just got an email from the Windows Azure team that there are new SDK versions for the Windows Azure offerings. Unfortunately, SQL express is still listed as the database version for the fabric storage client. One cool improvement is the addition of a role in the platform for Silverlight.
     
    Here are links to the updated (January 2009 CTP) SDKs:

    There is a rainbow in the cloud! 🙂

    Cloud Development Quickstart

    I have been learning about working with Windows Azure for the past two weeks and have run into my share of challenges. Getting up to speed with the tools has taken quite a bit of work and there have many pitfalls towards getting an environment running to work with the Cloud. In this post I am going to mention some things I have done to get a cloud environment rolling so that others can use this as a guide.
     
    First, you need to get all of the relevant software together to use Windows Azure. Here is an install list I went through to have everything to get started. This is helpful because the .NET Services SDK that was released after PDC has updated functionality. Some of what I have done for my environment is a little outside of the setup directions but was the most useful for me:
     

    Then there is some additional configuration to do to get the Azure SDK to use your SQL Server instance other than SQL Express which is the default. A few posters had mentioned this technique but there were a few missing steps. Follow these steps to get the Azure SDK to use your local SQL 2008 instance (or a different one):

    • Open Windows Explorer to c:Program FilesWindows Azure SDKv1.0bin and find the DevelopmentStorage.exe.config file.
    • Modify this file so that it refers to your local SQL 2008 instance such as:

    <connectionStrings>
       <
    add name=DevelopmentStorageDbConnectionStringconnectionString=Data Source=benc-vistabase;Initial Catalog=DevelopmentStorageDb;Integrated Security=TrueproviderName=System.Data.SqlClient />
    </
    connectionStrings>

    <appSettings>
       <
    add key=ClientSettingsProvider.ServiceUri value=“” />
    </
    appSettings>

    <developmentStorageConfig>
      
    <services>
          <
    service name=Bloburl=http://127.0.0.1:10000//>
          <
    service name=Queueurl=http://127.0.0.1:10001//>
          <
    service name=Tableurl=http://127.0.0.1:10002/dbServer=localhost dbName=developmentstoragedb/>
       </
    services>
    </developmentStorageConfig> 

    • Then open the Development Storage by going to Start Menu -> All Programs -> Windows Azure SDK -> Development Storage. This will start running the storage services and you will see an gray box icon in the tray. Right-click on this and click to open the Storage UI. The first time you do this it will ask to run some administrative tasks to create the database specified in the config file above.
    • This will get the Blob and Queue services running but the Table will start and then stop. You will need to specify a different database for the Table storage. One that works is the ReportServer database installed with SQL 2008. In the Development Storage you can click Tools -> Table service properties and then choose the ReportServer database. This can be changed later, but to get the Table service running this is a temporary workaround.
    • Then check the Table service and stop and restart the service and it will then no longer stop after a few seconds.
    Then you will need to get the Azure codes so that the two administration sites work for testing in the cloud.  After you get the code and validate them then you can associate your accounts with Windows Live Ids. Finally you will be able to access the Cloud administration sites. Unfortunately, there are 2 different cloud administration sites so be prepared to spend some time getting used to the user interfaces. Here are the starting links for the 2 cloud administration sites: https://lx.azure.microsoft.com for Windows Live and http://portal.ex.azure.microsoft.com for .NET Services. Understanding that there are two different cloud administration sites can be hard at first. The Azure MMC provides a simpler interface for working with the .NET Services administration so this is strongly recommended as well.
     
    Next you should start learning about the Cloud using the brief MSDN documentation like the Quick Lap around Windows Azure Tools for Visual Studio (http://msdn.microsoft.com/en-us/library/dd203059.aspx). This will get you started on the Cloud development samples as well as actually deploying services to the Microsoft Cloud. 
     
    I wanted to mention one site I have been following for Cloud news is http://www.azurejournal.com. This site provides some really helpful information across the new Cloud industry especially considering Amazon’s Cloud offerings and recent Windows Azure updates. Once you get your hands dirty with the Cloud setup, I have found that getting a broader awareness of the Cloud industry pretty helpful.
     
    The capabilities provided with the Cloud platform are enormous, but unfortunately the ramp up to using them at this point is steep. This blog post provided a checklist of things to do to get rolling on an environment for working with Cloud services. Let me know if you have any questions with this information. Thanks!
     

    WCF-SQL Adapter Modernizes BizTalk SQL Adapter Capabilities

    In my spare time I have been playing and testing all of the latest released capabilities of BizTalk Server 2009. During some of my time I have been working with the new WCF-SQL adapter that exposes a new WCF binding, SqlBinding, as part of the latest Adapter Pack. If you have ever worked with the BizTalk SQL adapter you know that the wizard in Visual Studio frequently caused problems and unfortunately these shortcomings were never adequately addressed in a service pack or updated release. Usually it was required that you just take a working example of the SQL adapter and then manually modify it to work with your database objects. More often than not you probably just avoided the SQL adapter completely and worked with the database through ADO.NET calls in an orchestration or custom pipeline. Now with the updated Adapter pack the WCF-SQL adapter finally modernizes the SQL adapter experience and gives you a stabile and very functional environment for interacting with SQL via an adapter. This article will highlight some of its capabilities and provide a walkthrough of the new WCF-SQL adapter wizard.

    All of my testing has been with the BizTalk 2009 Beta loaded on a Windows Server 2003 box with Visual Studio 2008 (including SP1) installed. I installed the BizTalk Adapter Pack found at https://connect.microsoft.com/content/content.aspx?ContentID=10580&SiteID=218. To add a schema based on the WCF-SQL adapter, open or create a BizTalk project in Visual Studio 2008 and right-click on the project. Clcik on the Add New Item > Add Generated Items as shown below:

    wcf-sql_1-1

    Then after the window loads you should see the following window:

    wcf-sql_2-1

    Click on "Add Adapter Metadata" and then click "Add". This will open up a general window that is used for several different adapters. After installing the BizTalk Adapter Pack V2, you should see an item listed in the listview called WCF-SQL. You should also see the older SQL item listed as well as any other Adapter Pack or Line-of-Business (LOB) adapters. You will need to enter a SQL server name and database in the combo boxes below the listview. I entered my local SQL Server instance and my BizTalkMgmtDb as seen in the screenshot below:

    wcf-sql_3-1

    You do not need to enter a port for this adapter so just leave this one blank and click Next. The following screen shows the form that is loaded next to help you determine which SQL objects to include in the WCF-SQL schema. If you worked with the previously mentioned rudimentary SQL adapter in BizTalk, at this point you would be presented with the option of entering a command text or a single SQL object name for the wizard to use to generate the schema. But the WCF-SQL adapter wizard provides database object browsing and filtering to further simplify the task of schema generation. The following screenshot shows the form when it is initially loaded:

    wcf-sql_4

    If you merely want to use the database you specified earlier in the wizard, click the configure button and then click OK to generate the default URI of mssql://.//?. Then click Connect to connect to the database specified. This will enable the bottom half of the screen where you can expand the categories of database objects and then find one or more objects to select. It is also possible to select a different database and/or configure additional database connectivity properties via the Configure button’s window. Below is an image of the Configure button’s window with the SSO database details specified:

    wcf-sql_5

    I have found that it is not possible to specify "(local)" for the SQL instance name as shown above so do not try this. Below is the form changed to allow selecting from several of the SSO databases’s tables:

    wcf-sql_6

    The "Search in Category" box in the middle of the form provides a way to filter the list of database objects. I have found that it is possible to use wildcards in this box by the percent character "%" but not by the asterisk – "*". Once you have selected objects to generate a schema for, click OK. Visual Studio will generate a schema and a related code class as well.

    The designer experience provided by the WCF-SQL adapter wizard is a huge step forward for the creation of BizTalk SQL schemas.

    BizTalk Dream Machine

    I have been playing with the new features of BizTalk 2009 and have been finding a few bugs. But some of what is available with this release is awesome. For example, due to Visual Studio 2008 integration you can reference a WCF Service library from your BizTalk project. You can also reference a project that uses LINQ so will be able to use LINQ indirectly in a BizTalk map. Another cool thing is that you can reference a WF library from your BizTalk project. This makes it possible to call a WF method directly from BizTalk and potentially move logic over to a WF process from BizTalk. I have not tried running a workflow from the BizTalk host but that will be the next thing to try. I have not seen any new BizTalk orchestration shapes for calling WF activities or workflows either.
     
    The new UDDI functionality included with the BizTalk 2009 beta is a little buggy at this point but the functionality seems to be a big step forward. More details on this soon.
     
    Lots of the wish list ideas I have had for where BizTalk could be going are things I am testing right now. Check back here as I find new features as part of the beta.
     
    Thanks,

    BizTalk Server 2009 Public Beta Released Today

    Today Microsoft released the public beta of the next version of BizTalk, BizTalk Server 2009 and it is available for download at the Microsoft Connect site – http://connect.microsoft.com/site/sitehome.aspx?SITEID=218. The latest version of the Microsoft ESB Guidance was also released at the same time and is available at the same CodePlex location – www.codeplex.com/esb. There are quite a few updated BizTalk features with this release and I will be showcasing some of these features in the next couple days.
     
    There were a couple of installation gotchas that I noticed initially with BizTalk 2009. I worked with BizTalk 2009 during the Microsoft TAP program a few weeks ago and have already installed it once. The 2009 TAP install did not require you to run Visual Studio 2008 SP1 but the new BizTalk release does require this so be sure to do this before running the installer. The 2009 install will add the Visual Studio extensions to Visual Studio 2008 so that you can now include your .NET 3.5 projects right alongside BizTalk projects.
     
    The developer tools will not be enabled as an install option without Visual Studio 2008 SP1. Since BizTalk 2009 is in beta you will want to report any issues to Microsoft as part of the feedback link on the BizTalk 2009 connect site or report it at the MSDN forums under BizTalk – http://forums.microsoft.com/MSDN/ShowForum.aspx?ForumID=1470&SiteID=1.
     
    The ESB Guidance no longer includes JMS features so you if you have been using JMS subscriptions with the ESB Guidance, do not upgrade at this time if you want to continue using JMS.  
     
    Thanks,

    Blog at WordPress.com.

    Up ↑