BizTalk 2013 supports an in place upgrade from BizTalk 2010 and we planned to do this on one of the BizTalk 2010 Servers that we support . We had used the ESB Toolkit 2.1 and a customized version of the ESB Exception Management Portal on this BizTalk 2010 server as well. What would happen if this BizTalk Server was upgraded with these components in situ?
There is little guidance on how you upgrade the ESB Toolkit 2.1 to ESB Toolkit 2.2. We cannot expect any guidance for upgrading the ESB Exception Management Portal Sample because it is only a sample. Precedence for an easy upgrade of these components was not promising. Kent Weare was the first one to warn that the ESB Exception Management Portal sample is broken in BizTalk 2013. Vladimir Kirnishni has described how to fix the ESB Exception Management Portal sample. Tomasso Groenendijk warned that if you leave the ESB 2.1 in situ after the upgrade “…you can’t use maps to transform a message! The return value in BizTalk 2010 is “XslTransform” and in BizTalk 2013 it’s “XslCompiledTransform”. The ESB toolkit 2.1 expects the old type resulting in the “Method not found” error.”
Given all this I decided to try an in situ upgrade to BizTalk 2013 with ESB Toolkit 2.1 and the ESB Exception Management Portal in situ. After a trouble free upgrade of BizTalk 2010 to BizTalk 2013 found that you could still browse to the ESB Exception Management Portal. Unfortunately when I generated an exception to go to the ESB exception management portal I got the error predicted by Tomas namely;
There was a failure executing the send pipeline: “Microsoft.Practices.ESB.ExceptionHandling.Pipelines.ESBFaultProcessor, Microsoft.Practices.ESB.ExceptionHandling.Pipelines, Version=22.214.171.124, Culture=neutral, PublicKeyToken=31bf3856ad364e35” Source: “ESB Transform” Send Port: “ALL.Exceptions” URI: “SQL://(local)/EsbExceptionDb/” Reason: Method not found: ‘System.Xml.Xsl.XslTransform Microsoft.XLANGs.RuntimeTypes.TransformMetaData.get_Transform()’.
This is what I feared might happen after reading the BizTalk forum reply.
So I tried to upgrade the ESB Toolkit 2.1 to ESB Toolkit 2.2. I selected the ESB 2.2 install from the BizTalk 2013 media and got to this screen.
I choose repair and got this screen which clearly was not going to work.
I tried it anyway and it failed. The log showed;
[8:48:48 a.m. Info] Detailed Log information for product D:\BizTalk Server\ESBT_x64\BizTalk ESB Toolkit 2.2.msi is available at DetailedLog
[8:48:48 a.m. Info] MSI installation returned 1638 – Another version of this product is already installed. Installation of this version cannot continue. To configure or remove the existing version of this product, use Add/Remove Programs on the Control Panel.
Oh well I uninstalled the ESB Toolkit 2.1 and then installed the ESB Toolkit 2.2. On opening the ESB Configuration tool the exception and itinerary databases were not configured and I choose to use the existing databases.
Now on browsing to the ESB Exception Management Portal I get this error
Server Error in ‘/ESB.Portal’ Application.
Client found response content type of ‘text/html; charset=utf-8’, but expected ‘text/xml’.
The request failed with the error message:
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Strict//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd”>
<title>IIS 7.5 Detailed Error – 500.19 – Internal Server Error</title>
<style type=”text/css”> ( continues with more detail)
At this stage i decided to refactor our customised version of the ESB Exception Management Portal to add the correct references to the Enterprise Library, but that can wait for another raining day……….
In summary an in place upgrade of the ESB Toolkit 2.1 is not possible and if you want to use the ESB Exception Management Portal sample look forward to refactoring your customisation of it. It might just be a whole lot easier to buy BizTalk360 and use their version of the Exception Management Portal