This document describes how to enable Microsoft BizTalk Accelerator for RosettaNet (BTARN) 3.0 and BTARN 3.5 to connect to the Elemica Exchange Server Provider (ESP) and was originally published as Connecting to the Elemica Network with Biztalk Accelerator for Rosettanet. The article has been updated to correct known issues and has been reproduced here preliminary to updating the official documentation to allow the community to correct any other inaccuracies and provide other enhancements.
This document accompanies the Elemica Connectivity Pack. Download here.
To customize BTARN to connect to Elemica, you must follow these steps:
The changes to Microsoft.Solutions.BTARN.RNIFReceive.dll and Microsoft.Solutions.BTARN.RNIFSend.dll have been made in the RNIFReceive.csproj and RNIFSend.csproj project files that are part of the WebApplication.zip. You can download these projects from http://go.microsoft.com/fwlink/?LinkId=46195. Use these projects as is instead of creating them from scratch.
This document describes the previous steps in detail.
To connect to Elemica, you must install the BTARN Hotfixes listed in the following table.
Q889523
FIX: The BizTalk Accelerator for RosettaNet 3.0 does not successfully process RosettaNet Implementation Framework (RNIF) 1.1 acknowledgement messages
http://go.microsoft.com/fwlink/?LinkId=119670
Q891072
The BizTalk Accelerator for RosettaNet 3.0 object identifier for MD5 is not correct for the RNIF 1.1 implementation
http://go.microsoft.com/fwlink/?LinkId=119672
Q890928
FIX: The BizTalk Accelerator for RosettaNet 3.0 incorrectly uses the local time instead of UTC time in the DateTimeStamp fields of RosettaNet messages
http://go.microsoft.com/fwlink/?LinkId=119673
Q890071
FIX: You may receive a validation error message when the BizTalk Server Accelerator for RosettaNet 3.0 processes a signal that contains a value for the GlobalPartnerClassificationCode element that is outside the predefined enumerations
http://go.microsoft.com/fwlink/?LinkId=119674
Q896496
Fix for the Preamble namespace for RNIF 1.1
http://go.microsoft.com/fwlink/?LinkID=119675
In the Process Configuration used for connecting with Elemica, set the standard to CIDX, as shown in the following figure.
For every agreement, add a custom property "AAR" (IsAcceptanceAckRequired), and set its value to False, as shown in the following figure.
To connect to Elemica, you must edit the Microsoft.Solutions.BTARN.RNIFReceive.dll and Microsoft.Solutions.BTARN.RNIFSend.dll files as described in the following topics. These changes have been made in the RNIFReceive.csproj and RNIFSend.csproj project files that are part of the WebApplication.zip file. You can download these project files from http://go.microsoft.com/fwlink/?LinkId=46195. Use these projects as is instead of creating them from scratch.
The RNIFReceive project files include the following:
The RNIFSend project files include the following:
To connect to Elemica, you must change the return HTTP status setting in Microsoft.Solutions.BTARN.RNIFReceive.dll file. These changes have been made in the RNIFReceive project files that you can download as part of the Elemica Connectivity Pack from http://go.microsoft.com/fwlink/?LinkId=46195.
The original RNIFReceive project is in the BTARN SDK folder under the WebApplication folder. The changes from the original RNIFReceive project are the following:
Copy the RNIFReceive project to a local folder on the computer.
Click Start, point to All Programs, point to Microsoft Visual Studio .NET 2003, point to Visual Studio .NET Tools, and then click Visual Studio .NET 2003 Command Prompt.
At the command prompt, browse to the folder to where you copied the project.
At the command prompt, to create a key pair needed to compile the project, type "sn -k Signing.snk", and then press ENTER.
Start Internet Information Services (IIS) Manager.
Create a new application pool and set its identity to Network Services.
Create a new virtual directory running under the newly created application pool. The virtual directory should point to the folder where you copied the RNIFReceive project.
Change the settings on the new virtual directory to Enable anonymous access and make sure that Integrated Windows Authentication is not selected.
Open the RNIFReceive.csproj project in Visual Studio .NET. Add a reference to the assembly Microsoft.Solutions.BTARN.Shared.dll found under <drive>:\Program Files\Microsoft BizTalk Accelerator for RosettaNet 3.0\Bin, and set the assembly key file for the project to Signing.snk.
Build and compile the project in Visual Studio .NET. Visual Studio will generate a new Microsoft.Solutions.BTARN.RNIFReceive.dll file under the folder Bin.
To enable connectivity to Elemica, edit the Web.config file to uncomment the following line:
<!-- <add key="Elemica" value="true" /> -->
Restart IIS.
To connect to the Elemica network, you must create public and private client certificates and import them into BTARN 3.0 or BTARN 3.5. For more information about certificates in BTARN 3.0 or BTARN 3.5, see "Managing Certificates" and "Step 2: Creating Public and Private Certificates", in the "Preparing for the Double-Action Tutorial" node,in Microsoft BizTalk Accelerator for RosettaNet Help.
To connect to Elemica, you must update the Microsoft.Solutions.BTARN.RNIFSend.dll file to support client certificates and set the configuration for client certificates as described in this topic. These changes have been made in the RNIFSend project files that you can download as part of the Elemica Connectivity Pack from http://go.microsoft.com/fwlink/?LinkId=46195.
The original RNIFSend project is in the BTARN SDK folder under the WebApplication folder. The changes from the original RNIFSend project are the following:
Copy the RNIFSend project to a local folder on the computer.
At the command prompt, to create a key pair needed to compile the project, type "sn -k Signing.snk" and then press ENTER.
Create a new application pool and set its identity to a new local user, for example, HttpHostSvc.
Add the user HttpHostSvc to the local groups IIS_WPG and STS_WPG.
Create a new virtual directory running under the newly created application pool. The virtual directory should point to the folder where you copied the RNIFSend project.
Change the settings on the new virtual directory to Enable anonymous access, and make sure that Integrated Windows Authentication is not selected.
Open the RNIFSend.csproj project in Visual Studio .NET. Add a reference to the assembly Microsoft.Solutions.BTARN.Shared.dll found under <drive>:\Program Files\Microsoft BizTalk Accelerator for RosettaNet 3.0\Bin, and set the assembly key file for the project to Signing.snk.
Build and compile the project in Visual Studio .NET. Visual Studio will generate a new Microsoft.Solutions.BTARN.RNIFSend.dll file under the folder Bin.
To enable connectivity using a client certificate, edit the Web.config file to uncomment the following line:
<!-- <add key="CertificateFile" value="C:\Documents and Settings\HttpHostSvc\Application Data\Microsoft\BizTalk Accelerator for RosettaNet 3.0\ClientCertificate.der" /> -->
Log out from the computer and log back in as the user HttpHostUser. Run the Certificates MMC. Import the client certificate to the "Personal" certificate store.
Export the certificate to a "DER encoded binary X.509 (.CER)" file. Make sure not to export the private key. Save the .der file as <drive>:\Documents and Settings\HttpHostUser\Application Data\Microsoft\BizTalk Accelerator for RosettaNet 3.0\ClientCertificate.der.
On your BizTalk server, edit the value of the following registry key to point to the URL of the new ASPX page in the new virtual directory: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\BizTalk Accelerator for RosettaNet 3.0\Configuration\RNIFSenderURI