Recently I’ve been working on a new project where we have to integrate Oracle within some workflows we are implementing using BizTalk Server 2010.
I have encountered several issues, so I preferred to document the solution as I got them solved. Hope it helps!
What I needed to do was to have a Polling Receive Location Listening from an Oracle Database. So I had to first test the connection from Visual Studio 2010 and import the schemas, then I had to create the receive location, with Transport Type WCF-Custom and Binding Type OracleDbBinding. Within the Visual Studio Solution I made a simple orchestration where I have a Receive Port (From Oracle DB) and a Send Port (FILE) so I could see the file that was being generating from the Receive Location.
So, this is how I got it working:
My Environment Configuration
I have my development environment configured as follows:
- Windows Server 2008 R2
- Visual Studio 2010
- BizTalk Server 2010
- WCF LOB Adapter SDK x64
- BizTalk Adapter Pack for both x32 and x64 bit machines
- Oracle 11g Client 11.0.7.0 for both x32 and x64 (One home for each).
Issue 1: Error “Connecting to the LOB System has failed”
When trying to connect to the oracle database while importing the schemas from the Consume Adapter Service Console you get this error:
In my case was because I had installed only the 64 bit version of the Oracle 11g Client. So I had to install the 32 bit version also.
After installing the 32 bit version, I tested it again and now it worked like a charm.
Issue 2: Unable to load OraMTS Error when configuring a Polling Receive Location
After I deployed my sample biztalk solution for the polling exercise, I had to create the Receive Location that was supposed to do the polling on the Oracle Database. The Polling Statement was set to a simple SELECT * FROM Sentence. The receive location was configured having the WCF-Custom Transport Type with the OracleDbBinding Binding Type. The polling interval was set to 60 seconds. After the receive location was configured, an error kept on showing in the Event Viewer saying that it was Unable to load OraMTS.
For this to be fixed it is necessary to install the Oracle Services for Microsoft Transaction Server. Since I had both 32 and 64 oracle client versions installed, I installed the Oracle Services for MTS for both:
Make sure you restart your machine after this installation, otherwise the error will keep on happening.