Friday, October 28

Microsoft.BizTalk.Adapters.CoreTransmitter.dll Not Found error when using the BizTalk Enterprise Adapter for PeopleSoft

There are numerous white papers on the BizTalk Enterprise Adapter for PeopleSoft. It is a wonderful tool, but unfortunately, none of these white papers thoroughly covers the challenges you may face in getting it up and running.


This post continues from this post in explaining some challenges you might face whilst using this Adapter, with the solutions I discovered.


Also read this post for the next error you are likely to encounter


When using the adapter Enterprise Adapter for PeopleSoft with BizTalk Server 2010 on a 64 bit server like Windows 2008 server, you will most likely get an error of the type:


The Messaging Engine failed to create the transport adapter "PeopleSoft".
OutboundAssemblyPath: "NULL"
OutboundTypeName: "Microsoft.BizTalk.Adapters.PeopleSoftTransmitter, Microsoft.BizTalk.Adapters.CoreTransmitter, Version=1.0.5025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
Exception Details: "Could not load file or assembly 'Microsoft.BizTalk.Adapters.CoreTransmitter, Version=1.0.5025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified."



For me, a search through the Internet produced little or no results.This error is actually caused because the dll it is seeking is a 32-bit dll and it is in the 32-bit GAC in C:\Windows\Assembly.


In order to use this dll, you therefore need to configure your PeopleSoft port to use a 32-bit Host. In my case, Sendhost was our default host, running in 64-bit mode. All our hosts were specifically allocated as we had a whole host of applications. I created a new host (in this case the BizTalkServerApplication host, as we had no need for it before now). I set the host to run in 32-bit mode and created a new host instance running on the domain app users group
  1. Open BizTalk Server Administration Console
  2. Open the BizTalk Group
  3. Open Platform Setings and Right-click on Hosts, select New, Host
  4. Type a name for the host (BizTalkServerApplicaiton in my case, but most times, this host would already be in use, so you can create a new host with a descriptive name of your choosing)
  5. Select In-Process for the Host Type, and tick the 32-Bit Only box for the mode under Options
  6. In the Windows Group box, type in your BizTalk Application Users Group (If you're in a large organization, then this would most likely be a domain group like it was in my case - read the next post for a fix to the error that is generated for domain groups). Click Apply and OK
  7. Right-click on the new Host you have just created, select New, Host Instance
  8. For the Server, select the correct server instance and click on the Configure button
  9. For the Logon and password , enter the credentials for a BizTalk instance user in the BizTalk Application Users Group (I'm afraid the correct setup of the BTS Application Users Group is out of the scope of this post). Click OK, Apply and OK
  10. Start the new Host Instance (Right-click and click Start)
Go back to your PeopleSoft port (the one you created by following the configuraiton instructions in my previous post).


Right-click on the port, click on Properties and change the Send Handler to the new host


This should fix the error described above.


Next post: Error message 'Unable to load DLL 'BAUtil.dll': Invalid access to memory location' error when using a 32-bit host with a domain group in BizTalk Server

No comments:

Post a Comment