none
The provider is not compatible with the version of Oracle client RRS feed

  • Question

  • Good afternoon,

    I'm new to Biztalk and trying to debug my first orchestration that connects to Oracle. After two days my brain feels bruised.

    What I'm doing:

    I'm using a send port to connect to an oracle function via WCF. I drop a test input file into the input directory and it errors out.

    I'm getting this error:

     

    System.TypeInitializationException: The type initializer for 'Oracle.DataAccess.Client.OracleConnection' threw an exception. ---> Oracle.DataAccess.Client.OracleException: The provider is not compatible with the version of Oracle client
       at Oracle.DataAccess.Client.OracleInit.Initialize()
       at Oracle.DataAccess.Client.OracleConnection..cctor()
       --- End of inner exception stack trace ---
       at Oracle.DataAccess.Client.OracleConnection..ctor()
       at Microsoft.Adapters.OracleDB.OracleDBBinding.Initialize()
    

     

    I have connectivity to Oracle. I was able to connect via visual studio 2010 and create a schema and binding file (project->add generated item->consume service). Sqlplus works to query the oracle database. I have not been able to successfully use biztalk against Oracle. 

    I created the send port from the provided binding file. I entered the credentials into the send port configuration.

    The oracle database is 11g Release 11.2.

    Any suggestions on how to go about debugging this?

    Tuesday, October 4, 2011 6:44 PM

Answers

  • This was caused by not having the correct version of Oracle ODAC installed. It's critical that you have exactly the correct version or Biztalk connectivity will not work.
    • Marked as answer by jsprenkle Tuesday, October 11, 2011 3:37 PM
    Friday, October 7, 2011 5:51 PM

All replies

  • Can you give details about your environment, biztalk version and is the OS 64 bit or 32 bit.
    Regards,
    Bali
    MCTS: BizTalk Server 2010,BizTalk Server 2006 and WCF
    My Blog:dpsbali-biztalkweblog
    -----------------------------------------------------
    Mark As Answer or Vote As Helpful if this helps.
    Tuesday, October 4, 2011 8:01 PM
  • Microsoft Virtual PC 2007 hosts

    Windows Server 2007 Service pack 2.

    This is 32 bit only because of the VM.

    Biztalk 2010 Server.

    Biztalk mgmtdb on MS SqlServer 2008.

    Visual Studio 2010 Development Environment.

    Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 Server - 64bit Production

    Oracle client 11.1.0.7.0 (from the oracle installer "installed products")

    I'm unsure of the versions of some of the internal bits.

    Trying to get the vs2010 to work I did many uninstalls and reinstalls of the adapter pack 2.0 downloaded from msdn. What finally worked was this:

    I installed the oracle connectivity stuff from biztalk server CD

    \BizTalk Server\lob

    \BizTalk Server\AdapterPack_x86

    I don't know how the system works well enough to know where to look.

     

     

    Tuesday, October 4, 2011 8:22 PM
  • you can check the documentation on msdn here. Also you should install the latest oracle tools for visual studio and you can download these from the OTN.
    Regards,
    Bali
    MCTS: BizTalk Server 2010,BizTalk Server 2006 and WCF
    My Blog:dpsbali-biztalkweblog
    -----------------------------------------------------
    Mark As Answer or Vote As Helpful if this helps.

    • Edited by DPS Bali Wednesday, October 5, 2011 2:33 AM
    • Proposed as answer by DPS Bali Tuesday, October 11, 2011 11:24 AM
    Wednesday, October 5, 2011 2:32 AM
  • Hi,

    Have you tried to install BizTalk Server 2010 Adapter Pack and then install Oracle client. That is procedure I followed and it works with Oracle 11g, see my post on Table Operation on Oracle 11g XE with OracleDbBinding.

    HTH

    Regards,

    Steef-Jan Wiggers
    MVP & MCTS BizTalk Server 2010
    http://soa-thoughts.blogspot.com/
    If this answers your question please mark it accordingly

     


    BizTalk
    Wednesday, October 5, 2011 11:06 AM
    Moderator
  • Your link is broken :(
    Wednesday, October 5, 2011 2:48 PM
  • Hi,

    I repaired it, but to be sure: http://soa-thoughts.blogspot.com/2011/04/table-operation-on-oracle-11g-xe-with.html

    HTH

    Regards,

    Steef-Jan Wiggers
    MVP & MCTS BizTalk Server 2010
    http://soa-thoughts.blogspot.com/
    If this answers your question please mark it accordingly


    BizTalk
    Wednesday, October 5, 2011 2:53 PM
    Moderator
  • Since I don't understand how this particular system works it's difficult for me to localize a problem.

    My biztalk orchestration uses a send port configured as 'WCF-Custom'.

    So it's using WCF to talk to the oracle database. Am I correct in thinking this bypasses all the oracle provided connectivity (ODP, ODBC, etc.) and uses Microsoft code?

    If that's true why would the oracle client be necessary at all? It should open a TCP connection over the network stack and have a nice chat with the oracle database.

    Is this sort of stuff explained anywhere?

    Thanks

    Wednesday, October 5, 2011 3:01 PM
  • Very nice post. I'll see if that works.
    Wednesday, October 5, 2011 3:06 PM
  • What a nightmare.

    I've uninstalled the microsoft adapter pack.

    The I reinstalled the adapter pack from the biztalk cd.

    This fails exactly the same as before.

    I removed the adapters and installed the new adapter pack evaluation from the msdn site. Then reinstalled Oracle. Now VS2010 tells me there are no adapters installed.

    I wish whoever developed these packages had to spend the last few days in my shoes.

    Wednesday, October 5, 2011 7:12 PM
  •  

    Do *not* install the downloaded evaluation adapter pack from MSDN.

    Your visual studio 2010 will report that there are no valid bindings.

    If you install the adapter pack from the biztalk cd that at least works.

    It also appears that they've removed the tnsnames.ora file for resolving host names with the latest version. I bet that's going to require some configuration changes for the ports.

     

    Wednesday, October 5, 2011 9:43 PM
  • I completely removed the Oracle software. Which was painful because for the new 11g version they provided an installer but no uninstaller. The "universal" installer won't uninstall the new installation either. It took several hours figuring out how to rip out all the **** it installed.

    I checked the GAC to ensure no old code was still present.

    I installed the new version of Oracle client and that did not fix it.

    Extensive googling indicated I needed to install ODP. I installed the new version ODP as well. From what I saw in that installer it might be sufficient to only install that (and not the client).

    That gets adapters visible to VS2010. These adapters do not work though.

    In vs2010 right click on a project, click add generated item, choose consume a service, put in connection information and you get

    "Connecting to the LOB system has failed. 

    ."

    A nearly useless message. There is no further information in the event log.

    sqlplus connects from the same machine using the same credentials and connection information.

     

    Thursday, October 6, 2011 2:30 PM
  • This was caused by not having the correct version of Oracle ODAC installed. It's critical that you have exactly the correct version or Biztalk connectivity will not work.
    • Marked as answer by jsprenkle Tuesday, October 11, 2011 3:37 PM
    Friday, October 7, 2011 5:51 PM