In my last post I wrote about BAM Portal running in Internet Explorer 11, the browser we normally have in the BizTalk Server machine. However BAM Portal can and should be remotely accessed by the users and not directly from the server.

But this can leads us to other problems. Each user has his own preference regarding to browsers, some of them like Google Chrome, others Firefox and other IE. As recently I upgrade my laptop to Windows 10, I took this opportunity to validate the BAM Portal behavior in different browsers, including the new browser from Microsoft – Microsoft Edge

Microsoft Edge

As I expected BAM Portal does not perform well with the new Microsoft Edge browser. It ask the authentication credentials with a nice window, with a very clean layout

BAM-Portal-Microsoft-Edge-authentication

But after that you still have the same compatibility problem between Internet Explorer and the site: the menu have problems and you cannot select the columns to perform the queries

BAM-Portal-Microsoft-Edge-compatibility-problems

But unfortunately for us Microsoft Edge doesn’t have the compatibility view option, instead you have to use the option “Open with Internet Explorer”

BAM-Portal-Microsoft-Edge-open-with-IE

Conclusion: BAM Portal is not supported on Microsoft Edge.

Internet Explorer 11

Again BAM Portal does not perform well with IE11 as I described in my last post: Running BAM Portal in Internet Explorer 11: Enable Compatibility view and to fix all the problems you need to add this site to the “Compatibility View Settings”

Once you turn on Compatibility View, Internet Explorer will automatically show the BAM Portal in Compatibility View each time you visit fixing all the previous behaviors problems.

BAM-Portal-IE11-compatibility-problems-fixed

Conclusion: IE is the best browser to run BAM Portal

Google Chrome

I did not have much hope that Google Chrome will be any different. And again when we try to access BAM Portal a popup asking the authentication credentials is presented

BAM-Portal-Google-Chrome-authentication

But after that you still have the same compatibility problem, again the menu have problems and you cannot select the columns to perform the queries

BAM-Portal-Google-Chrome-compatibility-problems

Google chrome doesn’t have the “Compatibility View Settings” option that exists in IE however there are some extension that you will find in chrome web store like “IE Tab” that will display web pages using IE within Chrome

BAM-Portal-Google-Chrome-IE-Extension

After installing this extension you will have an option in the right corner of the browser to display BAM Portal using IE within Chrome

BAM-Portal-Google-Chrome-IE-Tab-Extension

And using this technique you will be able to run BAM Portal in chrome

BAM-Portal-Google-Chrome-compatibility-problems-fixed

Mozilla Firefox

The exact same behavior happens in Firefox, the authentication popup is presented but after that you still have the same compatibility problem, again the menu have problems and you cannot select the columns to perform the queries

BAM-Portal-Firefox-authentication

BAM-Portal-Firefox-compatibility-problems

As with Chrome, Firefox also does not have the “Compatibility View Settings” option and also relies in extensions like “IE Tab” to render the page using IE

BAM-Portal-Firefox-IE-Extension

After installing this extension, by right click over the BAM Portal you can find the option “View Page in IE Tab” and this will do the trick for you

BAM-Portal-Firefox-IE-Tab-Extension

A new windows asking credentials is shown and after that you will have BAM Portal running fine in Firefox

BAM-Portal-Firefox-compatibility-problems-fixed

In short, Microsoft Edge does not support BAM Portal. IE is the best browser to run BAM Portal and you can run BAM Portal in Chrome of Firefox using extensions to emulate IE.

Sometimes websites don’t look like you expect them to. Images might not appear, menus might be out of place, and text could be jumbled together. This might be caused by a compatibility problem between Internet Explorer and the site you’re on and most of the times this behavior can be fixed by adding the site to your Compatibility View list.

Compatibility View was introduced in Windows Internet Explorer 8 to help existing content continue to work with Windows Internet Explorer 7, while developers updated their content to support modern interoperable web standards. Well, unfortunately for us, BAM Portal never was updated and continues to have problems of compatibility.

BizTalk-Server-2013-R2-BAM-Portal-IE11-compatibility-problems

As always one of the downsides of dealing with a new versions of products like IE and so on… is figuring out where some features/options have moved in this new release. And this exactly one of this cases…

“Starting with IE11, document modes are considered deprecated and should no longer be used. Webpages that require legacy document modes to display properly should be rewritten to use features defined by modern standards.”  – Source: Specifying legacy document modes

For this reason, in Internet Explorer 11, the compatibility view button is removed from the address bar. Microsoft felt that the button had outlived his purpose because it’s been many years now since Microsoft introduced X-UA-Compatible tags. Web developers were supposed to add these X-UA-Compatible meta tags to their website’s HTML header to indicate web page compatibility and not leave it to the user to depend on the button to correctly render the page.

However, and fortunately for us BizTalkers, the compatibility view feature still remains in the browser.

You can turn it on or off by:

  • Click on the Settings icon in the top right corner of IE11 and select the “Compatibility View Settings” item in the drop-down menu

IE11-compatibility-view-settings

  • In the “Compatibility View Settings” box, add the problematic website URL – aka BAM Portal – and then click Add.
    • Compatibility View is turned on for this single website, for this specific computer.
  • Enable both check box “Display intranet sites in Compatibility View” and “Use Microsoft compatibility lists”, and then click Close.

IE11-compatibility-view-settings-add-website

Once you turn on Compatibility View, Internet Explorer will automatically show the BAM Portal in Compatibility View each time you visit fixing all the previous behaviors problems.

BizTalk-Server-2013-R2-BAM-Portal-IE11-compatibility-problems-fixed

Finally a new BizTalk Server book it’s available and just in time for my vacations! No I will not work during my vacations but unlike the Caribbean where we can eat and then jump right away into the water, or eat in the water, here in Europe we have to wait approximately 3 hours, depending on how much food you eat. So in that period I like to read a book and I usually take with me at least one technical book and this year will be: SOA Patterns with BizTalk Server 2013 and Microsoft Azure (Second Edition)

WP_20150726_17_51_16_Pro

I like to be on the beach scratching technical books with notes and ideas Smile

This time I will not make any review on this book because I was pleased to be part of this project as a technical reviewer, so everything I can say may be suspect… and I take this opportunity to thank the authors (Richard Seroter, Mark Brimble, Johann Cooper, Colin Dijkgraaf, Mahindra Morar) for the invitation.

The book will address and will explain to you how to create and implement SOA strategies on the Microsoft technology stack using BizTalk Server 2013 and Azure Integration platforms

  • Understand how to implement SOA with BizTalk Server and the Azure platform
  • Consume and expose WCF services effectively via the use of Service Bus Relays and RESTful services
  • Implement effective schema design, including an introduction to various schema design patterns
  • Exploit various message exchange/endpoint patterns including request-response, fire and forget, and client callbacks
  • Leverage orchestration design patterns that maximize flexibility and reuse
  • Future-proof your BizTalk Server artifacts using well thought out versioning strategies
  • Build loosely-coupled BizTalk applications using the ESB Toolkit
  • Take a peek at API Apps, Logic Apps, and Azure API Management
  • And best of luck for those who are preparing to take this certification.

See Steef-Jan review about the book here and I hope you enjoy reading it. I know I will!

The book is available through Amazon and PACKT is self, so go to either of one and order it!

Have you had the time to think about what is some features like RosettaNet, ESB or UDDI have in common?

Well, all of them have custom databases and all of them are optional features.

But the most important question here, because they have custom databases, is: Do you think that these databases are being backedup? And the data inside are saved?

And the response is NO… Because these “custom” databases are not installed with BizTalk Server, they are not included in the default list of databases to be marked and backed up by the Backup BizTalk Server job. So if you want the Backup BizTalk Server job to back up RosettaNet, ESB or UDDI custom databases, you must manually add the databases to the Backup BizTalk Server job.

BizTalk-Server-Default-Database-backups

Fortunately for us, Microsoft provides two SQL Scripts:

  • Backup_Setup_All_Procs.sql
  • Backup_Setup_All_Tables.sql

That can be found in the Schema folder inside the BizTalk installation folder: “C:\Program Files (x86)\Microsoft BizTalk Server 2013 R2\Schema”, that you need to run against these databases in other to extend the standard backup mechanisms. However you also need to modify the adm_OtherBackupDatabases table (present in the BizTalk Management (BizTalkMgmtDb) database) to include a row for each these custom databases.

How to Back Up Custom Databases (RosettaNet, ESB or UDDI databases)

Note: I will not advise you to backup any custom application databases (database used to support BizTalk Application processes or others) with the Backup BizTalk Server job, with the exception of custom BizTalk database, like RosettaNet, UDDI or ESB.

To accomplish that you need to:

  • Browse to the “C:\Program Files (x86)\Microsoft BizTalk Server 2013 R2\Schema” directory, and then run against the RosettaNet, ESB or UDDI (custom) databases the following SQL scripts.
    • Backup_Setup_All_Procs.sql
    • and Backup_Setup_All_Tables.sql

BizTalk-Server-run-SQL-scripts-to-backup-custom-databases

  • So in this case we need to run these two SQL scripts against the following databases
    • RosettaNet
      • BTARNARCHIVE
      • BTARNCONFIG
      • BTARNDATA
    • ESB Toolkit
      • EsbExceptionDb
      • EsbItineraryDb
    • UDDI
      • UDDI3

Note: This creates the necessary procedures, table, and role and assigns permissions to the stored procedures.

  • Modify the adm_OtherBackupDatabases table, present in the in the BizTalk Management (BizTalkMgmtDb) database, to include a row for each of your custom databases
    • Type the new server and database names in the corresponding columns
      • DefaultDatabaseName: The friendly name of your custom database.
      • DatabaseName: The name of your custom database.
      • ServerName: The name of the computer running SQL Server.
      • BTSServerName: The name of the BizTalk Server. This value is not used, but it must contain a value nonetheless.

BizTalk-Server-adm_OtherBackupDatabases-table-configuration

The next time you run the Backup BizTalk Server job, it will back up your custom databases.

BizTalk-Server-with-custom-Database-backups

See this and more tips here: BizTalk Server Tips & Tricks for Developers and Admins (Deep Dive)

When trying to deploy BAM definition by:

  • Open a command prompt as follows: Click Start, click Run, type cmd, and then click OK.
  • Navigate to the tracking folder by typing “C:\Program Files (x86)\Microsoft BizTalk Server <version>\Tracking” at the command prompt. Press ENTER.
  • Type “bm deploy-all -DefinitionFile:<BAM definition file>”
  • Press ENTER.

I got the following error:

C:\Program Files (x86)\Microsoft BizTalk Server 2013\Tracking>bm.exe deploy-all -DefinitionFile:Tracking.xls
Microsoft (R) Business Activity Monitoring Utility Version 3.10.229.0
Copyright (C) Microsoft Corporation. All rights reserved.

Using ‘BAMPrimaryImport’ BAM Primary Import database on server ‘BIZTALK’…
Deploying Activity… Done.
Deploying View… ERROR: The BAM deployment failed.

Internal error: The operation terminated unsuccessfully.
OLE DB error: OLE DB or ODBC error: Login failed for user ‘Domain\UserAccount’.; 42000.
Errors in the high-level relational engine. A connection could not be made to the data source with the DataSourceID of ‘bam_MessageView’, Name of ‘bam_MessageView’.
Errors in the OLAP storage engine: An error occurred while the dimension, with the ID of ‘MessageView_ProcessDate’, Name of ‘MessageView_ProcessDate’ was being processed.
Errors in the OLAP storage engine: An error occurred while the ‘Hour’ attribute of the ‘MessageView_ProcessDate’ dimension from the ‘BAMAnalysis’ database was being processed.

OLE DB error: OLE DB or ODBC error: Login failed for user ‘Domain\UserAccount’.; 42000.
Errors in the high-level relational engine. A connection could not be made to the data source with the DataSourceID of ‘bam_MessageView’, Name of ‘bam_MessageView’.
Errors in the OLAP storage engine: An error occurred while the dimension, with the ID of ‘MessageView_ProcessDate’, Name of ‘MessageView_ProcessDate’ was being processed.
Errors in the OLAP storage engine: An error occurred while the ‘Week’ attribute of the ‘MessageView_ProcessDate’ dimension from the ‘BAMAnalysis’ database was being processed.
OLE DB error: OLE DB or ODBC error: Login failed for user ‘Domain\UserAccount’.; 42000.
Errors in the high-level relational engine. A connection could not be made to the data source with the DataSourceID of ‘bam_MessageView’, Name of ‘bam_MessageView’.
Errors in the OLAP storage engine: An error occurred while the dimension, with the ID of ‘MessageView_DestinationParty’, Name of ‘MessageView_DestinationParty’ was being processed.
Errors in the OLAP storage engine: An error occurred while the ‘DestinationPartyName’ attribute of the ‘MessageView_DestinationParty’ dimension from the ‘BAMAnalysis’ database was being processed.
OLE DB error: OLE DB or ODBC error: Login failed for user ‘Domain\UserAccount’.; 42000.
Errors in the high-level relational engine. A connection could not be made to the data source with the DataSourceID of ‘bam_MessageView’, Name of ‘bam_MessageView’.
Errors in the OLAP storage engine: An error occurred while the dimension, with the ID of ‘MessageView_PipCode’, Name of ‘MessageView_PipCode’ was being processed.
Errors in the OLAP storage engine: An error occurred while the ‘PipCode’ attribute of the ‘MessageView_PipCode’ dimension from the ‘BAMAnalysis’ database was being processed.
Server: The current operation was cancelled because another operation in the transaction failed.
OLE DB error: OLE DB or ODBC error: Login failed for user ‘Domain\UserAccount’.; 42000.
Errors in the high-level relational engine. A connection could not be made to the data source with the DataSourceID of ‘bam_MessageView’, Name of ‘bam_MessageView’.
Errors in the OLAP storage engine: An error occurred while the dimension, with the ID of ‘MessageView_ProcessDate’, Name of ‘MessageView_ProcessDate’ was being processed.
Errors in the OLAP storage engine: An error occurred while the ‘Year’ attributeof the ‘MessageView_ProcessDate’ dimension from the ‘BAMAnalysis’ database was being processed.
OLE DB error: OLE DB or ODBC error: Login failed for user ”Domain\UserAccount’.; 42000.
Errors in the high-level relational engine. A connection could not be made to the data source with the DataSourceID of ‘bam_MessageView’, Name of ‘bam_MessageView’.
Errors in the OLAP storage engine: An error occurred while the dimension, with the ID of ‘MessageView_ActivityName’, Name of ‘MessageView_ActivityName’ was being processed.
Errors in the OLAP storage engine: An error occurred while the ‘ActivityName’ attribute of the ‘MessageView_ActivityName’ dimension from the ‘BAMAnalysis’ database was being processed.
OLE DB error: OLE DB or ODBC error: Login failed for user ‘Domain\UserAccount’.; 42000.
Errors in the high-level relational engine. A connection could not be made to the data source with the DataSourceID of ‘bam_MessageView’, Name of ‘bam_MessageView’.
Errors in the OLAP storage engine: An error occurred while the dimension, with the ID of ‘MessageView_ProcessDate’, Name of ‘MessageView_ProcessDate’ was being processed.
Errors in the OLAP storage engine: An error occurred while the ‘Day’ attribute of the ‘MessageView_ProcessDate’ dimension from the ‘BAMAnalysis’ database was being processed.
OLE DB error: OLE DB or ODBC error: Login failed for user ‘Domain\UserAccount’.; 42000.
Errors in the high-level relational engine. A connection could not be made to the data source with the DataSourceID of ‘bam_MessageView’, Name of ‘bam_MessageView’.
Errors in the OLAP storage engine: An error occurred while the dimension, with the ID of ‘MessageView_SourceParty’, Name of ‘MessageView_SourceParty’ was being processed.
Errors in the OLAP storage engine: An error occurred while the ‘SourcePartyName’  attribute of the ‘MessageView_SourceParty’ dimension from the ‘BAMAnalysis’ database was being processed.
OLE DB error: OLE DB or ODBC error: Login failed for user ‘Domain\UserAccount’.; 42000.
Errors in the high-level relational engine. A connection could not be made to the data source with the DataSourceID of ‘bam_MessageView’, Name of ‘bam_MessageView’.
Errors in the OLAP storage engine: An error occurred while the dimension, with the ID of ‘MessageView_ProcessDate’, Name of ‘MessageView_ProcessDate’ was being processed.
Errors in the OLAP storage engine: An error occurred while the ‘Minute’ attribute of the ‘MessageView_ProcessDate’ dimension from the ‘BAMAnalysis’ database was being processed.

BAM-Deploy-OLE-DB-error-or-ODBC-error-Login-failed-for-user

CAUSE

The main reason for the error above happen is when the SQL Server service account does not have read access to BAMStarSchema database.

SOLUTION

To fix this issue you have two options.

First option:

  • Open SQL Server Management Studio and expand BAMStarSchema database
  • Expand “Security”, right-click on the “User” option, And select “New User…”
  • Configure the SQL Server service account to have db_datareader Role access as shown below

BAM-BAMStarSchema-database-db_datareader-Role-access

Second Option:

  • Open SQL Server Management Studio and execute the following script (Replacing the SQL Server service account)
USE BAMStarSchema
GO
EXEC sp_addrolemember 'db_datareader', 'Domain\SQL Server service account'
GO

This section provides information about troubleshooting your BizTalk 2013 R2 Accelerator for RosettaNet (BTARN) installation.

Do not install SQL Server on the domain controller computer

If you install SQL Server on the same computer as your domain controller computer, it returns the following error message when it is trying to create the SQL send ports:

Error: Failed updating binding information.
BindingException: Could not validate TransportTypeData or Address properties for Primary Transport of Send Port ‘SendPort1′. Exception from HRESULT: 0x80131500.
Error: Failed updating binding information.
BindingException: Could not validate TransportTypeData or Address properties for Primary Transport of Send Port ‘SendPort1′. Exception from HRESULT: 0x80131500

Important: Do not install SQL Server on the domain controller computer.

Service account for the application pools must be the same as the service account for the Isolated Host and Host instances

If the service account set for the BTARN application pools is different from the Isolated Host account, BTARN will not be able to process incoming messages correctly. When the receive .aspx page calls the pipeline, the pipeline will not have access to the appropriate certificates. Therefore, it will not be able to decrypt the incoming message or validate the signature. It will also not be able to access the MessageBox database.

Related links:

This section provides detailed information about additional configurations of BizTalk 2013 R2 Accelerator for RosettaNet (BTARN) that you need to do before you start using it:

  • Start BTARN orchestrations, send ports, and receive locations, manually. These do not start automatically when you install and configure BTARN.
    • Note: You need to start the “PrivateInitiator_To_LOB” and “PrivateResponder_To_LOB” send ports before you can start the “PrivateInitiatorProcess” and “PrivateResponderProcess” orchestrations.
  • On computers where you have configured an Internet Information Services (IIS) virtual server with Secure Sockets Layer (SSL), you must configure the virtual server to accept the client certificate. For more information, see the “Step 4: Enabling Secure Sockets Layer in IIS” topic in the MSDN Double Action Tutorial.
Start BTARN orchestrations, send ports, and receive locations
  • Start “BizTalk Server Administration” console as an administrator.
  • In the “BizTalk Server Administration Console”, in the left pane, expand “BizTalk Group”, expand “Applications”, and then expand “BizTalk Application 1”.
  • Click “Send Ports”.
    • In the right pane, for each BTARN send port that is not started, right-click and then click “Start”:
      • “PrivateInitiator_To_LOB” Static One-Way send port
      • “PrivateResponder_To_LOB” Static One-Way send port
  • Click “Receive Locations”.
    • In the right pane, for each BTARN receive location that is not started, right-click and then click “Enable”.
      • “Async_Http_Receive” HTTP location
      • “Sync_Http_Receive” HTTP location
      • “LOB_To_PrivateInitiator” SQL location
      • “LOB_To_PrivateResponder” SQL location
  • Click “Orchestrations”.
    • In the right pane, for each BTARN orchestration that is not started, right-click and then click “Start”
      • Microsoft.Solutions.BTARN.CommonTypes.OdxTypes
      • Microsoft.Solutions.BTARN.CommonTypes.SendExceptionToLOB
      • Microsoft.Solutions.BTARN.CommonTypes.SendExceptionToPrivateProcess
      • Microsoft.Solutions.BTARN.PublicResponder.PublicResponderProcess
      • Microsoft.Solutions.BTARN.PublicResponder.PublicResponderV11
      • Microsoft.Solutions.BTARN.PublicInitiator.PublicInitiatorProcess
      • Microsoft.Solutions.BTARN.PublicInitiator.PublicInitiatorV11
      • Microsoft.Solutions.BTARN.PrivateResponder.PrivateResponderProcess
    • Microsoft.Solutions.BTARN.PrivateInitiator.PrivateInitiatorProcess

However, sometimes, from some strange unknown reasons, even if the installation/configuration end up successfully, some of the artifacts may not be properly created/deployed in your BizTalk environment, for example ports and/or bindings. This situation already happen to me twice in several installations.

35-BTARN-After-instalattion-configuration-problems

In this particular problem, the reason was that, because the configuration process has their half dozens of failures/limitations/bugs, some of the binding files used by BTARN (generated by configuration/installation process) was configure to use the default host – that in my case it was incorrectly defined as “BizTalkServerApplication64Host”, a non-BTARN host – in the receive and send ports. The problem was that this particular host is used only to process orchestrations and it is not associated with any BizTalk adapter.

The solution in this situations is to understand the problem and manually fix. Fortunately for us Microsoft made available all the BTARN resources: DLL, source code, binding files and so on in the BTARN installation folder, which by default is:

  • “C:\Program Files (x86)\Microsoft BizTalk 2013 R2 Accelerator for RosettaNet”

It is recommend to validate if all the resources are correctly deploy and configured in your BizTalk Server. I already face an issue where I found out after finish the installation/configuration process that none of the DLL’s where deployed correctly in the environment:

  • In the “BizTalk Server Administration Console”, in the left pane, expand “BizTalk Group”, expand “Applications”, and then expand “BizTalk Application 1”.
  • Click “Resources” and you should find there 11 BTARN DLL’s (otherwise you need to manually deploy the missing ones)
    • Microsoft.Solutions.BTARN.CommonTypes.dll
    • Microsoft.Solutions.BTARN.GlobalSchemas.dll
    • Microsoft.Solutions.BTARN.PipelineReceive.dll
    • Microsoft.Solutions.BTARN.PipelineSend.dll
    • Microsoft.Solutions.BTARN.PrivateInitiator.dll
    • Microsoft.Solutions.BTARN.PrivateResponder.dll
    • Microsoft.Solutions.BTARN.PublicInitiator.dll
    • Microsoft.Solutions.BTARN.PublicResponder.dll
    • Microsoft.Solutions.BTARN.Schemas.RNIFv11.dll
    • Microsoft.Solutions.BTARN.Schemas.RNIFv201.dll
    • Microsoft.Solutions.BTARN.Schemas.RNPIPs.dll

36-BTARN-dlls

Note: You will find these DLL’s in the BTARN installation folder under the “Bin” folder: “C:\Program Files (x86)\Microsoft BizTalk 2013 R2 Accelerator for RosettaNet\Bin”

  • The second step is to fix and import the binding files.
    • Note: You will find these Binding Files in the BTARN installation folder under the “Bin” folder.
    • Note: Before you import it you need to manually fix manually, that way the Preparing your BizTalk Server 2013 R2 environment for BTARN section is very important to avoid these type of problems after the installation and configuration process.

37-BTARN-binding-files-problem

  • In this case to solve the problem that you need to:
    • Right-click in the “BizTalk Application 1”, and select the option “Import à Bindings…” and import the following binding files that you will find in the BTARN Bin folder:
      • CommonTypesBinding
      • PrivateInitiatorBinding
      • PrivateResponderBinding
      • PublicInitiatorBinding
      • PublicResponderBinding
  • The next step is to make sure that all the artifacts (orchestrations, send ports and receive locations) are associated with the BTARN hosts:
    • BizTalkServerApplication
    • BizTalkServerIsolatedHost
  • Click “Send Ports” and check if the following BTARN send ports are running under the “BizTalkServerApplication” send handler, otherwise you should modify it.
    • “PrivateInitiator_To_LOB”
    • “PrivateResponder_To_LOB”

38-BTARN-Send-Ports

  • Click “Receive Locations”.
    • Check if the following BTARN receive location are running under the “BizTalkServerIsolatedHost” receive handler, otherwise you should modify it.
      • “Async_Http_Receive”
      • “Sync_Http_Receive”
    • And check if the following BTARN receive location are running under the “BizTalkServerApplication” receive handler, otherwise you should modify it.
      • “LOB_To_PrivateInitiator”
      • “LOB_To_PrivateResponder”

39-BTARN-Receive-Locations

  • Click “Orchestrations” and check if the following BTARN orchestrations are running under the “BizTalkServerApplication” host, otherwise you should modify it
    • Microsoft.Solutions.BTARN.CommonTypes.OdxTypes
    • Microsoft.Solutions.BTARN.CommonTypes.SendExceptionToLOB
    • Microsoft.Solutions.BTARN.CommonTypes.SendExceptionToPrivateProcess
    • Microsoft.Solutions.BTARN.PublicResponder.PublicResponderProcess
    • Microsoft.Solutions.BTARN.PublicResponder.PublicResponderV11
    • Microsoft.Solutions.BTARN.PublicInitiator.PublicInitiatorProcess
    • Microsoft.Solutions.BTARN.PublicInitiator.PublicInitiatorV11
    • Microsoft.Solutions.BTARN.PrivateResponder.PrivateResponderProcess
    • Microsoft.Solutions.BTARN.PrivateInitiator.PrivateInitiatorProcess

40-BTARN-Orchestrations

You should do all of this configuration, to prevent future problems, otherwise, sooner or later you will have problems with BTARN.

Note: The Official documentation specifies that should restart the BizTalk Server machine to apply any modifications made in configuration and permissions. Fortunately, you don’t need that.

Configuring IIS Application Pool Identities

IIS supports running 32- and 64-bit web sites in separate application pools. Regarding to BTARN is very important to:

  • Set the BTARN application pool to 32-bit mode.
  • The Identity used in the BTARN Application pools should be the same that we use in the BTARN BizTalk Host Instance Account and the BizTalk Isolated Host Instance Account. Otherwise, BTARN in some situations may not work correctly.
    • If the service account set for the BTARN application pools is different from the Isolated Host account, BTARN will not be able to process incoming messages correctly. When the receive “.aspx page” calls the pipeline, the pipeline will not have access to the appropriate certificates. Therefore, it will not be able to decrypt the incoming message or validate the signature. It will also not be able to access the MessageBox database.

To change the Identity property of BATRN application pools you need to:

  • Open the IIS Management Console
  • On the left three in the “Internet information Services (IIS) Manager” console, click in “Application Pools” node underneath the machine node.
  • Right-click the “BTARNAppPool” application pool and select “Advanced Settings…
    • Select the “Identity” list item and click the ellipsis, the following dialog appears:

41-BTARN-IIS-BTARNAppPool-Application-pool-settings

    • Select the “Custom account” option and set the same service account used for the Isolated Host and Host instances
  • Do the exact same steps for the “BTARNHttpReceivePool” application pool.

42-BTARN-IIS-Application-pools

Related links:

This part will focus on installing and configuring Microsoft BizTalk 2013 R2 Accelerator for RosettaNet.

Make sure that you have installed all the prerequisites and prepared you environment for the RosettaNet accelerator.

Install Microsoft BizTalk 2013 R2 Accelerator for RosettaNet

BizTalk Accelerator for RosettaNet is available in the BizTalk Server installation disk (ISO) under: “BizTalk Accelerators” folder.

  • Access to “BizTalk Accelerators” folder in the BizTalk Server ISO, and then run the Setup.exe file.

24-BTARN-installation-folder

  • On the Start page, click “Microsoft BizTalk 2013 R2 Accelerator for RosettaNet”

25-BTARN-Installation-Wizard

  • On the “Installation Wizard” screen for Microsoft BizTalk Accelerator for RosettaNet, click “Install”.

26-BTARN-Installation-Wizard

  • On the “Customer Information” page, type your user name, organization, and the product key, and then click “Next”.

26-BTARN-Installation-Wizard-Customer-Information

  • On the License Agreement page, read the End User License Agreement, and then click Accept.

27-BTARN-Installation-Wizard-License-Agreement

Note: If you do not accept the license agreement, you cannot continue with the installation.

  • On the “Installation Options” page, select “Complete” for a full installation and ensure the installation path is correct, and then click “Next”.
    • Or if you wish so, you can also customize the features that you want to install or perform apartial installation by selecting the “Custom” option
      • Note: If you select Custom, select the components to install from the Custom Installation page. If you select to install SDK or Documentation components only, you must have .NET Framework 4.5 installed before running the setup program.

28-BTARN-Installation-Wizard-Installation-Options

  • On the “Summary” page, review the components you are installing, and then click “Install”.
    • The Installation Progress screen displays the progress of the installation procedure.

29-BTARN-Installation-Wizard-Summary

  • On the “Installation Completed” page, ensure the Run Configuration Wizard box is selected, and then click “Finish”.

30-BTARN-Installation-Wizard-Installation-Completed

  • The BTARN Configuration Wizard opens. Next, you configure BTARN.

Important:

  • If you perform a custom installation to install only the BTARN HTTP Front End feature, BTARN configuration may fail after setup is complete, displaying the error message “Failed to create object for feature: WebApp”. If this occurs, you need to copy two files (Microsoft.VC80.ATL.manifest and atl80.dll) from a computer with BizTalk Server 2013 R2 installed on it, to the computer where you installed the BTARN HTTP Front End feature.
  • If Visual Studio 2012 is installed on the same computer as BizTalk Server, the source folder for the two files is <drive>:\Program Files\Microsoft Visual Studio 11.0\VC\redist\x86\Microsoft.VC100.ATL. If Visual Studio 2012 is not installed on the BizTalk server, the source folder for the two files on the BizTalk server is a folder under <drive>:\WINDOWS\WinSxS. The version of the files should be 8.0.50727.42. The destination folder on the computer where you have installed the HTTP Front End feature is the BTARN installation directory (by default, <drive>:\Program Files (x86)\Microsoft BizTalk 2013 R2 Accelerator for RosettaNet).
  • After you have copied these files to the computer with the HTTP Front End feature installed, rerun Configuration.exe.
Configure Microsoft BizTalk 2013 R2 Accelerator for RosettaNet

Note: Before configuring BTARN, Make sure that you have installed all the prerequisites and prepared you environment for the RosettaNet accelerator. In specially:

  • Make sure you map .NET Framework 4.0 under Handler Mappings in IIS.
  • Also, when configuring BTARN on Windows 8.1, Windows Server 2012, and Windows Server 2012 R2, you must create the IIS_WPG group manually.

To configure BTARN using Basic Configuration:

  • Press the “Windows key” to switch to the Start screen, type “RosettaNet”, right-click “BizTalk 2013 R2 Accelerator for RosettaNet Configuration” option from the Search menu, and then click Run as Administrator.
  • On the “Microsoft BizTalk 2013 R2 Accelerator for RosettaNet” Wizard page:
    • Select the “Basic configuration” option to configure the server with default settings
      • Or “Custom configuration” to configure the server using advanced configuration options.
    • In the “Database server name” text box under “Database” properties, verify that the server name displayed is correct.
    • In the “Service credential” properties, type the “User name” and “Password” for the account that the configure BTARN will run under.

31-BTARN-Basic-configuration

  • Click “Configure”.
  • If your account has administrative privileges, click “Yes” to proceed with the configuration.

32-BTARN-Basic-configuration-account-has-administrative-privileges-warning

  • On the “Summary” page, review the components you are installing, and then click “Next”.

32-BTARN-Basic-configuration-Summary

  • On the “Configuration Completed” page, click “Finish”.

34-BTARN-Basic-configuration-Configuration-Completed

Note:

  • If you selected Custom configuration in step 1, perform the following steps:
    • To configure the runtime, in the Microsoft BTRAN Configuration dialog box, click “Runtime” in the left pane:
      • In the right “Runtime” pane, click “Enable the Runtime feature on this computer”.
      • To join an existing database group, clear “Do you want to create a new database group”.
      • Select the appropriate Web server name, port number, data stores, Application Pool service account, and BizTalk HTTP Receive virtual folder.
    • To configure the WebApps feature, in the Microsoft BTRAN Configuration dialog box, click “WebApps” in the left pane:
      • In the right “WebApps” pane, click “Enable the Runtime feature on this computer”.
      • Enter the appropriate BizTalk Server name and port number, or select the defaults.
      • Select the appropriate Web application virtual folder.
    • Click Apply Configuration.

Note: BTARN configuration will fail if you use a special character in the name of any of the BTARN databases.

Related links:

This may be the most important section in order for you to accomplish a successfully BTARN installation and configuration and at the same time preventing further additional problems. Again, the installation and configuration process is very simple, however be able to correctly configure the accelerator in order to work properly can be difficult if you do not plan correctly for it.

This part will focus on how to prepare your existing BizTalk Server 2013 R2 environment for BTARN.

Create a new account to be associated with the BTARN hosts

As mention before the accelerator requires both BTARN in-process and BTARN isolated host to be marked as “Authentication Trusted” and “32-bit only“ and the account associated with these Host instances should be the same, otherwise, BTARN will not work correctly.

“Authentication Trusted” is off by default when you create a new host, or if you don’t specify in the BizTalk Server configuration process that you want this setting enable. And BizTalk will not allow you to use the same user account for both trusted and untrusted hosts.

Also because, for security aspects, we don’t want to have all our host instances marked as “Authentication Trusted” it is necessary for us to create:

  • A new user account that will be associated to the trusted hosts.
  • And a new user account (support account) that will help us in the switching host process from untrusted to trusted.

Note: Sometimes it is often easier/more desirable to create a new User Group with the same privileges of the “BizTalk Application Users” group (let’s say: BTARN BizTalk Application Users) and a new user account that will be associated with this group to run all the BTARN processes.

To accomplished that we need to:

  • Press the “Windows key” to switch to the Start screen, type “Computer Management” and click in “Computer Management” option from the Search menu
  • On the left three of the “Computer Management” screen,, expand “System Tools à Local Users and Groups” and select “Users”
  • Right click under “Users” folder, and then select “New User…”

01-BTARN-Add-New-User-local-computer

  • In the “New User” dialog box, do the following:
    • User name: Type the user name. For this guide let’s assume “btsadmin
    • Full name: Optionally, type a full user name for this account.
    • Description: Optionally, type a description for this account.
    • Password: Type a password for the user.
    • Confirm password: Confirm the password for the user.
    • And leave only the “Password never expires” check box enabled

Note: Make sure that the user that you are creating (btsadmin) it has:

  • The same privileges of the existent BizTalk Admin Account (in my case or in developer environments)
  • It has the same privileges of the existent Account associated in the “BizTalk Application Users” group

Repeat the same steps to create another account for support, let´s call it “supportacc”:

  • This account will be deleted after the installation/configuration
  • Normal user account, it doesn’t requires any particular privileges
(Re)Configure BizTalk Host and Host Instances to support BTARN

BizTalk Server provides great flexibility for addressing high availability, because you can strategically dedicate logical hosts to run specific areas of functionality such as receiving messages, sending messages or processing orchestrations.

By default the BizTalk configuration will create two BizTalk Host and Host Instances:

  • BizTalkServerApplication: This is the default Host and Host Instance created during configuration that will do all the work on the BizTalk Server, i.e. is the default send and receive handler for all installed adapters (other than HTTP, WCF (BasicHttp, CustomIsolated, WebHttp and WSHttp) and SOAP Receive Handlers), and is also used for processing orchestration and tracking.

02-BTARN-BizTalkServerApplication-Host

  • BizTalkServerIsolatedHost: The logical container for HTTP, WCF (BasicHttp, CustomIsolated, WebHttp and WSHttp) and SOAP Receive Handlers.

03-BTARN-BizTalkServerIsolatdHost-Host

Although a single BizTalk Host can contain items that receive, send, and process messages, it is considered a best practice to create different hosts for each function to create security boundaries and for easier management and scalability. In particular, we recommend that you use different hosts for processing and for receive/send operations, and that you separate trusted and non-trusted items.

While there are benefits to creating additional host instances, there are also potential drawbacks if too many host instances are created.

  • Each host instance is a Windows service (BTSNTSvc.exe), which generates additional load against the MessageBox database and consumes computer resources (such as CPU, memory, threads).

Regarding to BTARN installation and configuration process, it becomes more difficult to configure when we have multiple host and host instances created, compared with the default configuration (with only two BizTalk Host and Host Instances) and the reasons are:

  • The accelerator requires both in-process and isolated hosts that will run BTARN artifacts to be marked as “Authentication Trusted” (this setting is off by default when you create a new host), “32-bit only” and should run under the same service account.

To ensure everything is installed and configured properly we have different options:

  • Temporarily mark all the hosts as “Authentication Trusted” and the “32-bit only” host as the default host
    • Of course, this is not the recommended solution, but is the easier one.
  • Or we need to properly configure the hosts and host instances to handle correctly BTARN.

Because I have all my environments, even my developer environments, with host separation according to some of the best practices described here: BizTalk Server Best Practices: Create and Configure BizTalk Server Host and Host Instances. I need to properly configure the hosts and host instances to handle correctly BTARN, to accomplish that we need to:

  • Press the “Windows key” to switch to the Start screen, type “BizTalk Server” and click in “BizTalk Server Administration” option from the Search menu
  • In the console tree, expand “BizTalk Server Administration”, expand the “BizTalk group”, click “Platform Settings”, and then click “Host Instances”.
  • Now we need to change all the host instances, with the exception of “BizTalkServerApplication” and “BizTalkServerIsolatedHost” (these two will be running the BTARN artifacts), to run under this last user that we just created in the last section: “btsadmin
    • Right-click in the host instance name, for example “BizTalkServerReceiveHost”, and select “Stop”

04-BTARN-stop-host-instances

    • In the details pane, right-click the host instance you want to modify, and then click “Properties, for example: “BizTalkServerReceiveHost”
    • In the “Host Instance Properties” dialog box, click “Configure” to modify the service account information.

05-BTARN-configure-host-instances-logon-credentials

    • Change the logon credentials to run under the “btsadmin” account

06-BTARN-configure-host-instances-logon-credentials

    • Do the rest for all the host instances that you have with the exception of “BizTalkServerApplication” and “BizTalkServerIsolatedHost” host instances.

07-BTARN-configure-host-instances-logon-credentials

The next step is to configure the both BTARN in-process and isolated hosts to be marked as “Authentication Trusted” and “32-bit only” but because we still have two non-trusted host instances running with the same account that we need to mark as trusted and we cannot have the same account being used as “Authentication Trusted” and non “Authentication Trusted”, we first need to provisionally change one of the host instance, to use the “supportacc” account, we can use for example the “BizTalkServerIsolatedHost” host instance

  • Right-click in the “BizTalkServerIsolatedHost” name, and then click “Properties
  • In the “Host Instance Properties” dialog box, click “Configure” to modify the service account information.
    • Change the logon credentials to run under the “supportacc” account

Now we need to change the “BizTalkServerApplication” Host configuration and mark it as:

  • “32-bit only” à by default is already marked as 32-bit only
  • And “Authentication Trusted”

To accomplish that we need to:

  • In the BizTalk Server Administration console tree, under “Platform Settings”, click “Hosts”.

08-BTARN-BizTalk-administration-console-hosts

  • In the “Hosts” pane, right-click the host that is not trusted, in this case “BizTalkServerApplication”, and then click Properties.
  • In the “Host Properties” dialog box, on the “General” tab:
    • Verify if the “32-bit only” check box is selected, if not select the “32-bit only” check box
    • Verify if the “Authentication Trusted” check box is selected, if not select the “Authentication Trusted” check box

09-BTARN-Authentication-trusted

  • And then click OK.
  • Now do the exact same to the “BizTalkServerIsolatedHost” host

10-BTARN-Authentication-trusted

Because the BTARN BizTalk Host Instance Account and the BizTalk Isolated Host Instance Account should be the same we need to change the “BizTalkServerIsolatedHost” host instance logon account, which we momentarily configured to run under the “supportacc” account to be the same of the “BizTalkServerApplication” host instance: “Administrator”.

  • In the BizTalk Server Administration console tree, under “Platform Settings”, click “Host Instances”.
  • Right-click in the “BizTalkServerIsolatedHost”, and then click “Properties
  • In the “Host Instance Properties” dialog box, click “Configure” to modify the service account information.
    • Change the logon credentials to run under the “Administrator” account

10-BTARN-host-configurations

Finally you should restart all the BizTalk Host instances services.

Note: Because we don’t really want to run all our isolated processes under a trusted host instance, I recommend you to create a new Isolated Host and Host Instance that you should configured as non-“Authentication Trusted” and set to run under the “btsadmin” account (in this scenario). For that operation please check the following MSDN articles:

Configure the Default Host and Default Handlers

The last concern that you need to have regarding with BizTalk Host and Host instances are the:

  • General Default Host in the group
  • And the Default send handler of HTTP Adapter and SQL Adapter

Again, as explained previously, when we are installing the RosettaNet Accelerator, the installer will install all the BTARN assemblies into the default BizTalk Application: “BizTalk Application 1”, and will attempt to configure all the orchestrations and ports (receive and send) to run not with the first host that it finds that is marked as “Authentication Trusted” but instead with the default host and handlers that are configured in the environment.

To ensure that everything will be configured properly, or at least minimize some problems, with the BTARN configuration process you need to:

  • Make sure the BTARN in-process host (BizTalkServerApplication) is the general Default Host in the group

11-BTARN-BizTalkServerApplication-mark-as-default-host

  • Make sure the BTARN in-process host (BizTalkServerApplication) is the default send handler of the SQL Adapter (yes the old obsolete one – not the WCF-SQL) and it is also associated with the receive handler.

12-BTARN-BizTalkServerApplication-default-send-handler

  • Make sure the BTARN in-process host (BizTalkServerApplication) is the default send handler of the HTTP Adapter.

13-BTARN-BizTalkServerApplication-default-send-handler

  • And of course the BTARN isolated host (BizTalkServerIsolatedHost) is configured to be the receive handler of the HTTP Adapter.

14-BTARN-BizTalkServerApplication-http-receive-handler

Create the IIS_WPG group

When configuring BTARN on Windows 8.1, Windows Server 2012, and Windows Server 2012 R2, you must create the IIS_WPG group manually. We need this because RosettaNet accelerator requires the IIS_WPG group (group provided by IIS 6.0 that provides the minimum set of user rights and permissions required to run an application) but unfortunately for us this group doesn’t exist anymore in the SO listed above, so you need to create it manually. Otherwise, BTARN installation will fail.

To accomplished that you need to:

  • Press the “Windows key” to switch to the Start screen, type “Computer Management” and click in “Computer Management” option from the Search menu
  • In the console tree, expand “System Tools”, expand the “Local Users and Groups”, and then click “Groups”.

15-BTARN-Computer-Management-Local-Users-and-Groups

  • Right click under “Groups” folder, and then select “New Group…”
  • In the New Group dialog box, set the following parameters:
    • In Group name, type “IIS_WPG”.
    • In Description, type “RosettaNet IIS group”

16-BTARN-create-IIS_WPG-group

  • Click “Create”, and then click “Close”.
Create a WebService extension for BTSHTTPReceive.dll

BTARN uses the HTTP adapter to send (left picture) or receive (right picture) PIPs to and from different partners:

17-BTARN-architecture

If the PIP process is asynchronous, each message transmission over the Internet occurs on a different HTTP connection. If the PIP is synchronous, each message transmission occurs on the same connection, which the HTTP adapter holds until the process is complete.

For that reason we need to create a WebService extension for the BTSHTTPReceive.dll and configure the IIS isolation mode. To accomplish that we need to:

  • Press the “Windows key” to switch to the Start screen, type “IIS” and click in “Internet Information Services (IIS) Manager” option from the Search menu
  • In Internet “Information Services (IIS) Manager” screen, select the root Web server entry. In the “Features View”, double-click “Handler Mappings”

18-BTARN-Information-Services-Manager-Handler-Mappings

  • And then in the Actions pane, click “Add Script Map…”

19-BTARN-Information-Services-Manager-Handler-Mappings-Add-Script-Map

  • In the “Add Script Map” dialog box, in the “Request path” field, type “BtsHttpReceive.dll”.
    • In the “Executable” field, click the ellipsis () button and browse to “C:\Program Files (x86)\Microsoft BizTalk Server 2013 R2 \HttpReceive”.
      • And select “BtsHttpReceive.dll” and then click “OK”.
    • In the “Name” field, type “BizTalk HTTP Receive”

20-BTARN-IIS-Add-Script-Map-BtsHttpReceive.dll

    • Then click “Request Restrictions”.
    • In the “Request Restrictions” dialog box, click the “Verbs” tab and then select “One of the following verbs”.
      • Enter “POST” as the verb.

21-BTARN-IIS-Add-Script-Map-BtsHttpReceive.dll

  • On the “Access” tab, select “Script”, and then click “OK”.

22-BTARN-IIS-Add-Script-Map-BtsHttpReceive.dll

  • When prompted to allow the ISAPI extension, click “Yes”.
  • Do the exact same process this time using the “C:\Program Files (x86)\Microsoft BizTalk Server 2013 R2\HttpReceive64\BTSHTTPReceive.dll”

23-BTARN-IIS-Add-Script-Map-BtsHttpReceive.dll-64-bit

Related links:

This series of post will explain in detail – a step-by-step guide – how to install and configure Microsoft BizTalk 2013 R2 Accelerator for RosettaNet (BTARN) on a standalone environment running Windows Server 2012 R2 and BizTalk Server 2013 R2.

RosettaNet is a business protocol that enables enterprises to conduct business over the Internet. The RosettaNet Consortium (http://www.rosettanet.org) is an independent, nonprofit consortium of major information technology, electronic component, and semiconductor manufacturing companies working to create and implement industry-wide, open process standards. These processes are designed to standardize the electronic business interfaces used between participating supply chain partners. The RosettaNet Implementation Framework (RNIF) specification is a guideline for applications that implement RosettaNet Partner Interface Processes (PIPs). These PIPs are standardized electronic business processes used between trading partners. You can find all the Framework specification and the list of PIPs available, as well the PIPs contract (DTD and documentation) in the RosettaNet Consortium website: http://www.rosettanet.org.

BTARN will extend the existing BizTalk Server capabilities allowing you to run RosettaNet Partner Interface Processes (PIPs) and by doing that, this will allow you to exchange RosettaNet documents with your business partners, by simple providing a set of orchestrations, schemas, tools and related helper assemblies. BTARN supports the RosettaNet Implementation Framework (RNIF) versions 1.1 and 2.0.01. However installing the accelerator can be difficult if you do not plan correctly for it.

This guide will provide you comprehensive guidelines that will help you plan the installation and configuration of BTARN.

Assumptions and out of scope

It will be assumed that all the BTARN software requirements already have been installed. This guide will use BizTalk Server 2013 R2 running over Windows Server 2012 R2 with all the latest critical Windows updates from Microsoft and latest Cumulative Updates for BizTalk Server installed.

Important considerations before you install the RosettaNet Accelerator

There are some important considerations or suggestions, since some of these operations are not mandatory, that we can and should set before starting the installation and configuration Microsoft BizTalk 2013 R2 Accelerator for RosettaNet (BTARN).

Software Requirements

The following table lists the software that BizTalk 2013 R2 Accelerator for RosettaNet (BTARN) requires to run correctly. BTARN has the same software and hardware requirements as BizTalk Server 2013 R2.

Software Required Description Required for/Information
Microsoft Windows · Windows Server 2012 R2· Windows Server 2012

· Windows 8.1

· Windows 7 SP1

Microsoft BizTalk Server 2013 R2 · Enterprise Edition· Standard Edition

· Developer Edition

Internet Information Services (IIS) The version that comes with the operating system.· IIS version 8.0 and 7.5 are supported.
Microsoft Office OptionalMicrosoft Office Excel 2013 or 2010.

BizTalk Server 2013 R2 supports only 32-bit version of Microsoft Office.

(installed on client computers when using BAM)

Required by Business Activity Monitoring (BAM) to display a real-time view of business processes
Microsoft SQL Server · Microsoft SQL Server 2014· Microsoft SQL Server 2012 SP1 This is required for BTARN Runtime, BizTalk Server Runtime, EDI, and BAM
SQL Server Analysis Services if using BAM aggregations
SQLXML 4.0 with Service Pack 1 SQLXML enables XML support for your SQL Server Database. It allows developers to bridge the gap between XML and relational data. You can create XML View of your existing relational data and work with it as if it was an XML file.Note: You don’t need to worry about installing this because Redistributable CAB File will install this for you if necessary. This is required for BizTalk Server Runtime, Administrative Tools, and BAM.
Windows Identity Foundation OptionalThe official documentation mention that Microsoft Windows SharePoint Services is a requirement.

However I think this is not correct/necessary. Until this date I don’t see any connection between the accelerator and the SharePoint Service.

SharePoint Services adapter or SharePoint Services Online when used with SharePoint Services Client Side Object Model (CSOM). It is not needed when using the SharePoint Services Web Service, which is deprecated. Or when you don’t want to use this feature.
Microsoft Visual Studio OptionalVisual Studio 2013 Provides a development environment for building BizTalk Server applications. Ultimate Edition is recommended, but Premium and Professional are also supported. This is required for BizTalk Server Developer Tools and SDK component
Things to be taken care

When you are planning to install Microsoft BizTalk 2013 R2 Accelerator for RosettaNet (BTARN), you need to be very careful with certain, documented and non-documented, notes or necessary configuration in your existing BizTalk environment. These are the notes in the official documentation:

  • Both BTARN and BizTalk Server 2013 R2 require Microsoft .NET Framework 4.5 as software pre-requisite.
    • If you have multiple versions of .NET Framework installed on your computer, make sure that the BtarnAPP Web application is referencing .NET Framework 2.0. You can configure this by using the Internet Information Services (IIS) Manager.
    • Personal note: Despite the official documentation saying that the BtarnAPP Web application need to refer .NET Framework 2.0, what I noticed is that it will work properly in .NET 4.0.
  • The BizTalk Host Instance Account and the BizTalk Isolated Host Instance Account should be the same. Otherwise, BTARN will not function correctly.
  • BTARN allows you to add only individual service accounts, and not groups, to the BizTalk Server Administrators group or the BizTalk Application Users group.
  • You need to create a WebService extension for BTSHTTPReceive.dll, configuring the IIS isolation mode.
  • Add your server (http://<server name>) to the Local Internet zone in the Internet Explorer security options.
  • If a remote SQL instance using non default port is used for configuring BTARN, then the SQL Server Client Tools must be installed locally.
  • A separate group must be used for role – BizTalk Administrator, BizTalk Host Users, and BizTalk Isolated Host Users during the configuration of BizTalk Server.
  • BTARN does not support the use of alias created for SQL instance to configure the BTARN database.

Unfortunately for us, there are still plenty of notes or the necessity to perform additional settings in our environment so that the minimal conditions are guaranteed for BTARN be able to run properly:

  • Installation
    • RosettaNet requires the IIS_WPG group (group provided by IIS 6.0 that provides the minimum set of user rights and permissions required to run an application) unfortunately for us this group doesn’t exist anymore, so you need to create it manually. Otherwise, BTARN installation will fail.
  • Host Instances
    • The accelerator requires both in-process and isolated host to be marked as “Authentication Trusted” and “32-bit only“. Otherwise, BTARN installation will fail.
      • Very important: The accelerator requires both in-process and isolated host to be marked as “Authentication Trusted” (this setting is off by default when you create a new host) and “32-bit only“.
        • And the reason why in-process need to be also trusted is that the BizTalk Host Instance Account and the BizTalk Isolated Host Instance Account should be the same and you cannot use the same account for trusted and untrusted hosts. Otherwise it was only necessary to mark the isolated host as trusted.
    • The BizTalk Host Instance Account and the BizTalk Isolated Host Instance Account should be the same. Otherwise, BTARN will not work correctly.
      • If the service account set for the BTARN application pools is different from the Isolated Host account, BTARN will not be able to process incoming messages correctly. When the receive “.aspx” page calls the pipeline, the pipeline will not have access to the appropriate certificates. Therefore, it will not be able to decrypt the incoming message or validate the signature. It will also not be able to access the MessageBox database.
    • Do never use Full Qualify domain name in the Logon credentials. Otherwise, BTARN will not work correctly.
    • Make sure the BTARN in-process host is the default send handler of HTTP Adapter and the general Default Host in the group
      • Important: Make sure the BTARN in-process host is the default send handler of the HTTP Adapter. When you create a Partner it will create two send ports and it will use the default send handler for the HTTP Adapter: If the BTARN in-process host is not the default handler, the engine will use the default one instead and then you need to stop the BTARN process, unbinding the send ports, reconfigure the send handler and only then start everything again, so this will induce a small shutting down in our environment.
      • When installing the accelerator, it will install all the assemblies into the default BizTalk Application, and will attempt to configure all orchestrations and ports to run in the first host it finds that is marked as “Authentication Trusted”.  To ensure everything is installed to the host instances you need to:
        • Temporarily make the trusted host instance as the default instance (not recommended).
        • Or if you want the assemblies to be in a different application than the default, create a new application in the BizTalk Administration Console and set it as the default during the installation.
  • BAM
    • Microsoft provide a Tracking file with the activity definitions. However: you need to create your custom BAM views
      • BTARN supports enhanced tracking using BizTalk Activity Monitoring (BAM).
        • Right-click the BizTalk Accelerator for RosettaNet node and then click Properties.
        • In the Global Properties dialog box, select Enable BAM Tracking to enable tracking, or clear this option to disable it.
      • Microsoft provide a Tracking file with the activity definitions however:
        • The tracking points are not customizable;
        • Do not change activity definitions.
        • You only can Manage BAM views and deployment.
  • Databases Maintenance
    • BTARN database are not backuped by default
      • Fortunately for us, Microsoft provides two SQL Scripts that you need to run against this databases in other to extend the standard backup mechanisms but you also need to modify the adm_OtherBackupDatabases table to include a row for each of your custom databases.
        • C:\Program Files (x86)\Microsoft BizTalk Server 2013 R2\Schema
          • Backup_Setup_All_Procs.sql
          • Backup_Setup_All_Tables.sql
        • Also you need to modify the adm_OtherBackupDatabases table to include a row for each of your custom databases
    • There are no maintenance processes to clean up BTARN databases so you need to create these maintenance processes according to the legal requirements of your company/organization, be aware that:
      • BTARN databases can grow quickly because they contain the PIP XML that you are processing
      • They can affect the performance of your environment
      • They are important

 

Related links: