Integration Hashtags


With the recent name change from Windows Azure to Microsoft Azure, the old WABS (Windows Azure BizTalk Services) hashtag has become obsolete. It was a risky hashtag to view at times anyway, given some of the dodgy meanings for “WABS” particularly in my neck of the woods – but that’s another story!

So far I haven’t seen a consistent replacement for the WABS hashtag being used, which got me thinking about the other hashtags we use in the integration space.

It would be really nice to have a definitive list of those hashtags to keep things relatively consistent when tweeting about integration technologies.

I’ve kicked this off below and created a poll for the ones there is some uncertainty around.

Please send me any alternatives or any I’ve missed and I’ll them to the list. In a weeks’ time after the polls close I’ll re-publish the list here.

  • #MSBTS – BizTalk Server
  • #Integration – Generic Integration
  • #Azure – Microsoft Azure
  • #ServiceBus – Microsoft Azure Service Bus
  • #Cloud – Generic Cloud
  • #WCF – Windows Communication Foundation
  • #AppFabric – Microsoft AppFabric for Windows Server
  • #SSIS – SQL Server Integration Services

Update:

Here is an updated list of suggested integration hashtags to use:

  • #MSBTS – BizTalk Server
  • #MABS – Microsoft Azure BizTalk Services
  • #ESBT – BizTalk ESB Toolkit
  • #Integration – Generic Integration
  • #Azure – Microsoft Azure
  • #ServiceBus – Microsoft Azure Service Bus
  • #Cloud – Generic Cloud
  • #WCF – Windows Communication Foundation
  • #AppFabric – Microsoft AppFabric for Windows Server
  • #SSIS – SQL Server Integration Services

BizTalk Adapter Service Installation

March 26, 2014 Leave a comment

In an article I recently published on TechNet Wiki I covered the installation steps required for the BizTalk Adapter Service (February 2014 Update).

The BizTalk Adapter Service facilitates communication between a cloud application and an on-premise Line-of-Business (LOB) system. The following on-premise LOB systems are supported:

  • Microsoft SQL Server
  • Oracle Database
  • Oracle E-Business Suite
  • SAP
  • Siebel eBusiness Applications

With the Windows Azure BizTalk Services February 2014 Update there is no longer a SQL Server installation requirement for the BizTalk Adapter Service. The BizTalk Adapter configuration data has been moved from an on-premise SQL Server database to a Windows Azure SQL database.

Categories: BizTalk Services

Sysprep BizTalk Server

March 26, 2014 Leave a comment

The System Preparation (Sysprep) tool prepares an installation of Windows for duplication, also called imaging, and enables you to capture a customized Windows image, or “golden image”, that can be reused throughout an organization.

This can be particularly beneficial when provisioning machines for a team of BizTalk developers. Installing and configuring BizTalk Server machines from scratch increases the lead time on a project. The other main advantage is the guarantee that each developer is working off a consistent configuration reducing the chances of “it works on my machine” incidents.

However, Sysprepping a BizTalk Server image is not as straightforward as Sysprepping a base Operating System image; mainly due to BizTalk Servers reliance on SQL Server.

BizTalk Server ships with some sample Sysprep scripts, but as with most samples these just serve as a foundation and require some customizations and additions. The documentation that accompanies the sample scripts is misleading in places and contains some gaps that can cause confusion.

I recently wrote an article on the TechNet Wiki that covers the steps required to Sysprep a fully configured BizTalk Server virtual machine.

The article was subsequently awarded a silver medal in the TechNet Guru Contest for January 2014.

Categories: BizTalk Server

Tracing with ESB Toolkit 2.2

May 13, 2013 3 comments

Thanks to Tomasso Groenendijk for figuring this one out and sharing.

As with previous versions of the ESB Toolkit there is a minor change required to get tracing working. The switch name no longer has the version number appended to it. So instead of “BizTalkESBToolkit20” or “BizTalkESBToolkit21” as in previous versions, it is now “BizTalkESBToolkit”.

This should remain constant going forward removing the need to guess what the switch name is on each release!

Similar to ESB Toolkit 2.1, the full list of steps are:

  1. In Notepad openC:\Windows\Microsoft.NET\Framework\v4.0.30319\CONFIG\machine.config for 32-bit
    C:\Windows\Microsoft.NET\Framework64\v4.0.30319\CONFIG\machine.config for 64-bit
  2. Locate the line with the closing configSections tag.
  3. Under that line paste the following section:
    <system.diagnostics>
          <switches>
              <add name="BizTalkESBToolkit" value="4"/>
          </switches>
    </system.diagnostics>
  4. Save and close machine.config.
  5. Start the DebugView program (Download)
  6. In DebugView, on the Capture menu, click Capture Global Win32 to make sure that it is checked.
  7. In the BizTalk Server Administration console, restart the BizTalkServerApplication host instance.

ESB Toolkit 2.2 Itinerary Designer Installation

April 22, 2013 4 comments

Brian Loesgen has a post on his blog describing an issue he ran into performing a clean build of BizTalk Server 2013 and ESB Toolkit 2.2, where the Itinerary Designer extension is not registered in Visual Studio 2012 after the ESB Toolkit 2.2 installation step.

I experienced this also so it may be more widespread than first thought. I’d be interested to hear how many other people run into it; it might be the case that this step will need to be added to installation instructions.

Before Brian pointed me to his post I had resolved this inadvertently when I installed the latest Visual Studio 2012 update, which would have resulted in a similar command being executed with the same outcome.

ESB Toolkit 2.1 Installation Checklists

April 8, 2013 2 comments

Overview

One of the biggest barriers to ESB Toolkit adoption I have come across is the installation and configuration overhead. This is a genuine concern, especially when you need to deviate from the standard configuration. If project timelines are tight, this can result in the ESB Toolkit being overlooked.

Through working on a number of ESB Toolkit based solutions for different customers I have compiled some high level installation checklists that cover the most common environment configurations. I will cover each of these in this blog series with a view to removing the initial barrier to building solutions based on the ESB Toolkit.

The Installing BizTalk 2010 ESB Toolkit 2.1 guide and Installing the BizTalk ESB Toolkit MSDN library topic should be used as a reference for drilling down into the detail of the steps included in the checklists.

If there is anything you have come across that you feel should be included in the checklist please get in touch and we can look at adding it.

Checklists

  1. ESB Toolkit 2.1 Core Standalone Installation Checklist

ESB Toolkit 2.1 Core Standalone Installation

April 1, 2013 3 comments

Environment

The environment configuration covered under this checklist is as follows:

  • 1 x 64-bit Windows Server 2008 R2 Enterprise Edition
  • BizTalk Server 2010 Developer Edition
  • SQL Server 2008 R2 Developer Edition
  • ESB Toolkit 2.1
  • All programs are installed on a drive isolated from the OS, an E drive in this case

Checklist

  1. Install the BizTalk ESB Toolkit 2.1-x64.msi
  2. Install the Microsoft.Practices.Services.Itinerary.DslPackage
  3. Import and install the Microsoft.Practices.ESB.CORE64.msi
  4. Create a 32-bit Host, Host Instance and assign the SQL send and receive handlers to it
  5. Configure the All.Exceptions send port in the Microsoft.Practices.ESB application to use the 32-bit SQL send handler
  6. Launch the ESB Configuration Tool and configure the toolkit
  7. Copy the following ESB Toolkit pipeline components from the “C:\Program Files (x86)\Microsoft BizTalk Server 2010\Pipeline Components” folder to the “E:\Program Files (x86)\Microsoft BizTalk Server 2010\Pipeline Components” folder:
    • Microsoft.Practices.ESB.ExceptionHandling.PipelineComponents.dll
    • Microsoft.Practices.ESB.Itinerary.PipelineComponents.dll
    • Microsoft.Practices.ESB.Namespace.PipelineComponents.dll
    • Microsoft.Practices.ESB.PipelineComponents.dll
  8. Copy the ItineraryDescription.xsd from the “E:\Program Files (x86)\Microsoft BizTalk ESB Toolkit 2.1\Web\ESB.ItineraryServices.Response.WCF\App_Data” folder to the “E:\Program Files (x86)\Microsoft BizTalk ESB Toolkit 2.1\Web\ESB.ItineraryServices.Generic.Response.WCF\App_Data” folder
  9. Add the SQL Server Service Analysis account as a User to the BAMStarSchema database and grant it the db_datareader role
  10.   Deploy the BAM activities
  11.   Configure Tracing
  12.   Restart host instances and perform an IISRESET
  13.   Verify all services are browse-able

Download OneNote Checklist

ESB Toolkit 2.2 Beta (Windows Azure VM): Configuration

February 25, 2013 4 comments

Overview

The following is a “brain-dump” of my experiences configuring ESB Toolkit 2.2 on a Windows Azure VM using the BizTalk Server 2013 beta (February 15th 2013 revision) on Windows Server 2012.

What’s New

There have been some enhancements made to the ESB Configuration Tool.

Default Configuration

The ability to apply a default configuration, similar to that provided with the BizTalk Server Configuration Tool, has been added. Clicking on the root tree node, ESB Configuration, produced an empty screen in previous versions of the ESB Toolkit but with ESB Toolkit 2.2 the following screen containing default configuration properties appears.

EsbTConfigurationMain

Using this screen we can set default values for the Database Server, IIS Web Services and the BizTalk User Groups and have those applied across to the Exception Management and ESB Core Components.

This simplifies the configuration for typical installations. For greater control of the configuration the Exception Management and ESB Core Components can be customised using the approach provided with previous versions of the ESB Toolkit.

ESB BizTalk Applications

This is a new node that has been added to the configuration tool. It consists of two options; Enable ESB Core Components in BizTalk Server and Enable ESB JMS/WMQ Components in BizTalk Server.

EsbTConfigurationApps

These replace the post configuration steps that were required with previous versions of the ESB Toolkit which involved manually running MSI’s to create the BizTalk Server Applications.

Moving these steps of the configuration process to the configuration tool is an obvious progression and you’d have to wonder why they were ever left as a manual step when the configuration tool was first introduced with ESB Toolkit 2.0.

Steps

As mentioned above a custom configuration is similar to the steps followed in previous versions of the ESB Toolkit, so we’ll cover a default configuration here.

1. Launch the ESB Configuration Tool.

2. Click on the ESB Configuration node and enter the Database Server, User Account and Password. The Website Name can be selected here – I’ve left it as the Default Web Site. I’ve also left the default BizTalk User Groups as this is an isolated configuration.

EsbTConfigurationMain

3. Click on the ESB BizTalk Applications node.

EsbTConfigurationApps

4. I am just going to install the ESB Core Application so select the Enable ESB Core Components in BizTalk Server checkbox and leave the Use Default Binding option selected.

EsbTConfigurationAppsSelect

5. Click Apply Configuration

Issues

The steps above should result in a fully configured ESB Toolkit. Some of the issues I encountered in reaching this point have been listed below.

IIS Install Registry Key is missing. Check that you have IIS 6.0 Extensions installed.

 

EsbTConfigurationIISError

The ESB Toolkit is still reliant on IIS 6.0 extensions which are not installed by default on the Windows Azure BizTalk Server 2013 Beta image. To resolve this issue you must install the IIS 6 Management Console feature.

InstallIIS6Feature

Note: The IIS 8 Management Console feature is not installed by default either on the Azure image but that is not a pre-requisite for the ESB Toolkit.

 

Cannot open database BizTalkMgmtDb on server XXXXX. Verify that you have the required security permissions and that communication between…(the error message cuts off here).

 

EsbTConfigurationConnectionError

So far I have been unable to reproduce this error.

Application: Microsoft.Practices.ESB already exists

 

EsbTConfigurationExistsError

In an attempt to resolve the error in 2 above I decided to test out the resilience of the ESB Configuration Tool when things go wrong. I re-applied the configuration again and this time received the error above informing me that the Microsoft.Practices.ESB application already exists. Clearly the ESB Toolkit Configuration Tool still doesn’t support rollbacks or idempotency.

DeployPolicyAsResource failed (full error message is not visible)

 

EsbTConfigurationPolicyExistsError

After my attempt to re-apply the configuration in 3 above was unsuccessful I carried out the following steps to allow me to retry the configuration.

1. Click Unconfigure Feature

EsbTConfigurationUnconfig

2. Select EsbBizTalkApplications and click Accept

EsbTConfigurationUnconfigSelect

3. The ESB BizTalk Applications features are now unconfigured

EsbTConfigurationUnconfigured

The reason for just unconfiguring the ESB BizTalk Applications is because I was able to identify this step as the one where the original error occurred. I could see that each of the other steps had completed successfully by viewing their state. This is done by clicking on their nodes in the ESB Toolkit Configuration Tool; a greyed out screen indicates a configured component.

After unconfiguring the ESB BizTalk Applications I selected Enable ESB Core Components in BizTalk Server again and applied the configuration which produced the “DeployPolicyAsResource failed” error.

As can be seen in the screen shot above the full error message is not visible. However, hovering over the ESB BizTalk Applications node (or any node that resulted in an error) will briefly show a tool tip containing the full error message. Depending on the size of the error message this can take a number of attempts to view the full error, as was the case here.

I was able to see that the error was being caused by the existence of the ESB.Deployment.Policy policy in the BRE which couldn’t be overwritten as it was in the “Deployed” state.

This was confusing as I had assumed that unconfiguring the ESB BizTalk Applications would have resulted in the Microsoft.ESB.Practices artefacts, including the ESB.Deployment.Policy policy, being removed.

I unconfigured the feature again and performed a visual check and confirmed everything had been removed even going as far as checking the database tables. However, no matter what I tried the same error appeared.

As a last resort I decided to unconfigure the ESB BizTalk Applications, close the ESB Toolkit Configuration Tool, launch the ESB Toolkit Configuration Tool and configure the ESB BizTalk Applications.

EsbTConfigurationComplete

Result! It appears that caching in the ESB Toolkit Configuration Tool was the cause.

Summary

The enhancements that have been made to the ESB Toolkit Configuration Tool fully automates the configuration process and will hopefully remove the initial barrier to adoption I have spoken about on previous posts. There is still room for improvement though, particularly when things go wrong. Not being able to view the full error message is frustrating. Hopefully with it being a cosmetic fix this will be resolved in the final release.

Be sure to install the IIS 6 Management Console feature prior to configuring the toolkit and in the event of an error during configuration:

  1. Unconfigure the offending component
  2. Close the ESB Configuration Tool
  3. Launch the ESB Configuration Tool
  4. Re-configure the component

BizTalk Server 2010 Map Deployment Bug

June 18, 2012 6 comments

This is more of a “note to self” but I feel it is worth sharing with the community.

Microsoft recommends that hot fixes should only be applied if you are experiencing the issues they address. There are good reasons for this, mainly around the amount of testing a hot fix goes through in comparison to a service pack.

I am going to go against that advice for BizTalk Server 2010 installations and add “Cumulative Update Package 1” to my installation checklist. This is to avoid a bug that has been present in every BizTalk Server 2010 environment I have installed and configured; from development machines to production servers.

Background

I first came up against this bug through being trigger happy with the Deploy menu item on a transforms project. I mistakenly deployed the transforms project before deploying one of the schema projects it referenced. Whilst previous versions of BizTalk Server would have prevented the transforms project from being deployed, BizTalk Server 2010 allows it.

The Bug

The bug manifests itself in the BizTalk Server Administration Console. When trying to expand the Applications folder you will receive the following error:

Schema referenced by Map ’map_name’ has been deleted. The local, cached version of the BizTalk Server group configuration is out of date. You must refresh the BizTalk Server group configuration before making further changes.

Refreshing the BizTalk Server group does not resolve the issue and the error continues to appear. This prevents access to every application in the group.

For further information on the bug have a read through Knowledge Base article 2516201

This has been covered under VSTS Bug number 678144 and is fixed in Cumulative Update Package 1 For BizTalk Server 2010.

The Fix

Applying the CU will only prevent the issue from occurring again by generating an error in Visual Studio. In the case of an MSI deployment, the error will appear during the import. However, it will not resolve the problem in the BizTalk Server Administration Console.

To remove the error you must delete the offending map in the transforms project from the bt_mapSpec table in the BizTalkMgmtDb database.

-- Locate the itemId of the map
Select * from bt_mapspec
-- Using the itemId retrieved above delete the map
Delete from bt_mapspec Where itemid = 'itemId_of_map'

On refreshing the BizTalk Server group the error will disappear and the applications can be accessed again.

Deleting entries from the BizTalk Server tables is not something I am overly comfortable with, but unfortunately it was the only resolution I could find to get rid of this particular error.