none
Urgent - Oracle adapter unable to create binding configuration element for editing RRS feed

  • Question

  • We have an app which uses OracleDBBindings via WCF_CUstom adapter. We are moving this to a different env. After the import of MSI and bindings, when we try to edit the properties to enter password, we get an error - "Unable to create binding configuration element for editing. Check the values of the BindingType and BindingConfiguration properties."

    There is also another error displayed after the one above -

    It says "Error loading properties(System.Configurtion.ConfigurationErrrorsException)Invalid element in configuration. The extension name 'oracleDBAdapterInboundTransactionBehavior' is not registered in the collection at syste,.serviceModel/extensions/behaviorExtensions(C:\users\user1\appdata\local\temp\2\config\.....config line 8)"

    I've noticed that in the admin console under adapters, if I tryto add a new adapter, I can see WCF-OracleDB as an option in the pull down list. There no OracleDBbinding option available on port properties. I am thinking some 32 bit component is missing. I could be totally wrong.

    We installed LOB SDK (64 bit) ( from the biztalk setup package)

    Adapter pack 32 bit and 64 bit (figured it out looking at assembly)

    This is on Windows 2008 64 bit server, Biztalk 2010 server

    Is there a better way of checking whether the component installed is 32-bit or 64-bit?

    Did anyone encounter this issue? Any help please...

    Thanks in advance

     


    SRG
    Wednesday, July 20, 2011 4:38 PM

Answers

  • Hi,

    If bindings did not register after installation the documentation suggests to register the adapter bindings and the .NET Framework Data Providers manually if the setup wizard failed to do so. According to documentation (InstallationGuide.htm) you need to:

    Registering the Bindings


    During the BizTalk Adapter Pack installation, the setup wizard may fail to register the adapter bindings or the .NET Framework Data Provider for mySAP Business Suite, but proceeds with the adapter installation. This might result due to problems with Windows Communication Foundation (WCF) installation, Microsoft Windows Communication Foundation (WCF) Line of Business (LOB) Adapter SDK installation, or the machine.config file being corrupt.

    Perform these steps only if the setup wizard fails to register the adapter bindings or .NET Framework Data Providers in the machine.config file.


    To register the adapter bindings or the .NET Framework Data Providers

    1.
    Navigate to the machine.config file on the computer. For example, on a 32-bit platform, the machine.config is available under <system drive>:\WINDOWS\Microsoft.NET\Framework\<version>\CONFIG.
    ◦ For Microsoft .NET Framework 3.5 SP1, <version> is the version v2.0.50727 of the .NET Framework.


    ◦ For Microsoft .NET Framework 4, <version> is the version v4.0.30319 of the .NET Framework.

    2.
    Open the file using a text editor.

    3.
    To register the adapter bindings:
    1. Search for the element "system.serviceModel" and add the following under it:


    <client>
      <endpoint binding="sapBinding" contract="IMetadataExchange" name="sap" />
      <endpoint binding="siebelBinding" contract="IMetadataExchange" name="siebel" />
      <endpoint binding="oracleDBBinding" contract="IMetadataExchange" name="oracleDb" />
      <endpoint binding="oracleEBSBinding" contract="IMetadataExchange" name="oracleEBS" />
      <endpoint binding="sqlBinding" contract="IMetadataExchange" name="mssql" />
    </client>
    2. Search for the element "bindingElementExtensions" under system.serviceModel\extensions.


    3. Look for the missing adapter binding. Add the following sections under the "bindingElementExtensions" node, depending on the missing adapter binding. You must register all the bindings if the setup wizard fails to register any.

     For the SAP adapter, add:


    <add name="sapAdapter" type="Microsoft.Adapters.SAP.SAPAdapterExtensionElement,Microsoft.Adapters.SAP, Version=<version>, Culture=neutral, PublicKeyToken=<public key>" /> For the Siebel adapter, add:


    <add name="siebelAdapter" type="Microsoft.Adapters.Siebel.SiebelAdapterExtensionElement,Microsoft.Adapters.Siebel, Version=<version>, Culture=neutral, PublicKeyToken=<public key>" /> For the Oracle Database adapter, add:


    <add name="oracleDBAdapter" type="Microsoft.Adapters.OracleDB.OracleDBAdapterExtensionElement,Microsoft.Adapters.OracleDB, Version=<version>, Culture=neutral, PublicKeyToken=<public key>" /> For the Oracle E-Business adapter, add:


    <add name="OracleEBSAdapter" type="Microsoft.Adapters.OracleEBS.OracleEBSBindingElementExtensionElement, Microsoft.Adapters.OracleEBS, Version=<version>, Culture=neutral, PublicKeyToken=<public key>" /> For the SQL adapter, add:


    <add name="sqlAdapter" type="Microsoft.Adapters.Sql.SqlAdapterBindingElementExtensionElement,Microsoft.Adapters.Sql, Version=<version>, Culture=neutral, PublicKeyToken=<public key>" />
    4. Search for the element "bindingExtensions" under system.serviceModel\extensions.


    5. Look for the missing adapter binding. Add the following sections under the "bindingExtensions" node, depending on the missing adapter binding. You must register all the bindings if the setup wizard fails to register any.

     For SAP adapter, add:


    <add name="sapBinding" type="Microsoft.Adapters.SAP.SAPAdapterBindingSection,Microsoft.Adapters.SAP, Version=<version>, Culture=neutral, PublicKeyToken=<public key>" /> For Siebel adapter, add:


    <add name="siebelBinding" type="Microsoft.Adapters.Siebel.SiebelAdapterBindingSection,Microsoft.Adapters.Siebel, Version=<version>, Culture=neutral, PublicKeyToken=<public key>" /> For Oracle Database adapter, add:


    <add name="oracleDBBinding" type="Microsoft.Adapters.OracleDB.OracleDBAdapterBindingSection,Microsoft.Adapters.OracleDB, Version=<version>, Culture=neutral, PublicKeyToken=<public key>" /> For Oracle E-Business adapter, add:


    <add name="OracleEBSBinding" type="Microsoft.Adapters.OracleEBS.OracleEBSBindingCollectionElement, Microsoft.Adapters.OracleEBS,Microsoft.Adapters.OracleEBS, Version=<version>, Culture=neutral, PublicKeyToken=<public key>" /> For SQL adapter, add:


    <add name="sqlBinding" type="Microsoft.Adapters.Sql.SqlAdapterBindingCollectionElement,Microsoft.Adapters.Sql, Version=<version>, Culture=neutral, PublicKeyToken=<public key>" />

     

    Note


    For information about how to determine the public key, see Determining the Public Key and Version.

    4.
    To register the .NET Framework Data Providers:
    1. Search for the element DbProviderFactories under the system.data node.


    2. Look for the missing .NET Framework Data Providers. Add the following sections under the DbProviderFactories node, depending on the missing provider. You must register all the providers if the setup wizard fails to register any.

     For the Data Provider for SAP, add:


    <add name="SAPClient Data Provider" invariant="Microsoft.Data.SAPClient"
        description=".NET Framework Data Provider for mySAP Business Suite"    type="Microsoft.Data.SAPClient.SAPClientFactory,Microsoft.Data.SAPClient, Version=<version>, Culture=neutral, PublicKeyToken=<public key>" /> For the Data Provider for Siebel, add:


    <add name="SiebelClient Data Provider" invariant="Microsoft.Data.SiebelClient"
        description=".NET Framework Data Provider for Siebel eBusiness Applications"
        type="Microsoft.Data.SiebelClient.SiebelProviderFactory,Microsoft.Data.SiebelClient, Version=<version>, Culture=neutral, PublicKeyToken=<public key>" />

    5.
    Save and close the machine.config file.


    Determining the Public Key and Version


    Perform the following steps to determine the public key and version for an adapter or .NET Framework Data Provider.

     

    To determine the public key

    1.
    Navigate to the Windows directory, typically C:\WINDOWS\assembly.

    2.
    Right-click the DLL for which you want the public key, and then select Properties. The following table lists the name of the DLLs for each adapter and provider.

     

    3.
    On the General tab, the value against the Public Key Token label specifies the public key for the DLL. Similarly, the value against the Version label specifies the version number for the DLL.

    4.
    Copy the public key, and then click Cancel.


    Installing the Custom RFCs


    You only need to perform this task if you want to use the Data Provider for SAP. For instructions on installing custom RFCs, see the "Installing Custom RFCs for the Data Provider for SAP" topic in the SAP adapter documentation. The document is typically installed at <installation drive>:\Program Files\Microsoft BizTalk Adapter Pack\Documents.

     

    Important

     


    If you are using an earlier version of the custom RFCs provided with the BizTalk Adapter Pack, you must upgrade them to the RFCs provided with this release. You must do so by removing the earlier RFCs and instead installing the RFCs shipped with this release.

    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
    Saturday, July 23, 2011 9:52 AM
    Moderator

All replies

  • Hi,

    The error indicates that there was an error loading a binding element for display in the user interface. This error often occurs with custom binding. The binding element is probably missing in the configuration file and is therefore not available on the drop-down list for binding. You need to check the values of the BindingType and BindingConfiguration properties. It is not complaining about any configuration of LOB SDK or Adapter itself it is the binding that is not in order. You have followed the wizard I assume when installing the Adapter Pack on x64 (like I did, see this post for reference) so I cannot image that this could be causing failures.

    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, July 20, 2011 5:48 PM
    Moderator
  • In the binding file I see the following:

    <BindingConfiguration vt="8">&lt;binding name="oracleDBBinding" closeTimeout="00:05:00" openTimeout="00:05:00" sendTimeout="00:05:00" useSchemaInNameSpace="false" enableBizTalkCompatibilityMode="true" /&gt;</BindingConfiguration>

    <BindingType vt="8">oracleDBBinding</BindingType>

    Even if I try to create a new send port, I don't see the OracleDBBinding in the drop down list.

    We will try with a clean setup again and let you know if it worked.


    SRG
    Wednesday, July 20, 2011 7:52 PM
  • Hi Steef,

                 After installing the adapters, we figured that the adapter binding info is missing from the machine.config files - both 32-bit and 64-bit.

    Does anyone know what could be the reason for this? Every link I refer to just says, install both 32-bit and 64-bit adapter packs which we already did. How come our installations didn't register in these config files?

    I appreciate any help.

    Thanks again.


    SRG
    Friday, July 22, 2011 3:31 PM
  • Hi,

    If bindings did not register after installation the documentation suggests to register the adapter bindings and the .NET Framework Data Providers manually if the setup wizard failed to do so. According to documentation (InstallationGuide.htm) you need to:

    Registering the Bindings


    During the BizTalk Adapter Pack installation, the setup wizard may fail to register the adapter bindings or the .NET Framework Data Provider for mySAP Business Suite, but proceeds with the adapter installation. This might result due to problems with Windows Communication Foundation (WCF) installation, Microsoft Windows Communication Foundation (WCF) Line of Business (LOB) Adapter SDK installation, or the machine.config file being corrupt.

    Perform these steps only if the setup wizard fails to register the adapter bindings or .NET Framework Data Providers in the machine.config file.


    To register the adapter bindings or the .NET Framework Data Providers

    1.
    Navigate to the machine.config file on the computer. For example, on a 32-bit platform, the machine.config is available under <system drive>:\WINDOWS\Microsoft.NET\Framework\<version>\CONFIG.
    ◦ For Microsoft .NET Framework 3.5 SP1, <version> is the version v2.0.50727 of the .NET Framework.


    ◦ For Microsoft .NET Framework 4, <version> is the version v4.0.30319 of the .NET Framework.

    2.
    Open the file using a text editor.

    3.
    To register the adapter bindings:
    1. Search for the element "system.serviceModel" and add the following under it:


    <client>
      <endpoint binding="sapBinding" contract="IMetadataExchange" name="sap" />
      <endpoint binding="siebelBinding" contract="IMetadataExchange" name="siebel" />
      <endpoint binding="oracleDBBinding" contract="IMetadataExchange" name="oracleDb" />
      <endpoint binding="oracleEBSBinding" contract="IMetadataExchange" name="oracleEBS" />
      <endpoint binding="sqlBinding" contract="IMetadataExchange" name="mssql" />
    </client>
    2. Search for the element "bindingElementExtensions" under system.serviceModel\extensions.


    3. Look for the missing adapter binding. Add the following sections under the "bindingElementExtensions" node, depending on the missing adapter binding. You must register all the bindings if the setup wizard fails to register any.

     For the SAP adapter, add:


    <add name="sapAdapter" type="Microsoft.Adapters.SAP.SAPAdapterExtensionElement,Microsoft.Adapters.SAP, Version=<version>, Culture=neutral, PublicKeyToken=<public key>" /> For the Siebel adapter, add:


    <add name="siebelAdapter" type="Microsoft.Adapters.Siebel.SiebelAdapterExtensionElement,Microsoft.Adapters.Siebel, Version=<version>, Culture=neutral, PublicKeyToken=<public key>" /> For the Oracle Database adapter, add:


    <add name="oracleDBAdapter" type="Microsoft.Adapters.OracleDB.OracleDBAdapterExtensionElement,Microsoft.Adapters.OracleDB, Version=<version>, Culture=neutral, PublicKeyToken=<public key>" /> For the Oracle E-Business adapter, add:


    <add name="OracleEBSAdapter" type="Microsoft.Adapters.OracleEBS.OracleEBSBindingElementExtensionElement, Microsoft.Adapters.OracleEBS, Version=<version>, Culture=neutral, PublicKeyToken=<public key>" /> For the SQL adapter, add:


    <add name="sqlAdapter" type="Microsoft.Adapters.Sql.SqlAdapterBindingElementExtensionElement,Microsoft.Adapters.Sql, Version=<version>, Culture=neutral, PublicKeyToken=<public key>" />
    4. Search for the element "bindingExtensions" under system.serviceModel\extensions.


    5. Look for the missing adapter binding. Add the following sections under the "bindingExtensions" node, depending on the missing adapter binding. You must register all the bindings if the setup wizard fails to register any.

     For SAP adapter, add:


    <add name="sapBinding" type="Microsoft.Adapters.SAP.SAPAdapterBindingSection,Microsoft.Adapters.SAP, Version=<version>, Culture=neutral, PublicKeyToken=<public key>" /> For Siebel adapter, add:


    <add name="siebelBinding" type="Microsoft.Adapters.Siebel.SiebelAdapterBindingSection,Microsoft.Adapters.Siebel, Version=<version>, Culture=neutral, PublicKeyToken=<public key>" /> For Oracle Database adapter, add:


    <add name="oracleDBBinding" type="Microsoft.Adapters.OracleDB.OracleDBAdapterBindingSection,Microsoft.Adapters.OracleDB, Version=<version>, Culture=neutral, PublicKeyToken=<public key>" /> For Oracle E-Business adapter, add:


    <add name="OracleEBSBinding" type="Microsoft.Adapters.OracleEBS.OracleEBSBindingCollectionElement, Microsoft.Adapters.OracleEBS,Microsoft.Adapters.OracleEBS, Version=<version>, Culture=neutral, PublicKeyToken=<public key>" /> For SQL adapter, add:


    <add name="sqlBinding" type="Microsoft.Adapters.Sql.SqlAdapterBindingCollectionElement,Microsoft.Adapters.Sql, Version=<version>, Culture=neutral, PublicKeyToken=<public key>" />

     

    Note


    For information about how to determine the public key, see Determining the Public Key and Version.

    4.
    To register the .NET Framework Data Providers:
    1. Search for the element DbProviderFactories under the system.data node.


    2. Look for the missing .NET Framework Data Providers. Add the following sections under the DbProviderFactories node, depending on the missing provider. You must register all the providers if the setup wizard fails to register any.

     For the Data Provider for SAP, add:


    <add name="SAPClient Data Provider" invariant="Microsoft.Data.SAPClient"
        description=".NET Framework Data Provider for mySAP Business Suite"    type="Microsoft.Data.SAPClient.SAPClientFactory,Microsoft.Data.SAPClient, Version=<version>, Culture=neutral, PublicKeyToken=<public key>" /> For the Data Provider for Siebel, add:


    <add name="SiebelClient Data Provider" invariant="Microsoft.Data.SiebelClient"
        description=".NET Framework Data Provider for Siebel eBusiness Applications"
        type="Microsoft.Data.SiebelClient.SiebelProviderFactory,Microsoft.Data.SiebelClient, Version=<version>, Culture=neutral, PublicKeyToken=<public key>" />

    5.
    Save and close the machine.config file.


    Determining the Public Key and Version


    Perform the following steps to determine the public key and version for an adapter or .NET Framework Data Provider.

     

    To determine the public key

    1.
    Navigate to the Windows directory, typically C:\WINDOWS\assembly.

    2.
    Right-click the DLL for which you want the public key, and then select Properties. The following table lists the name of the DLLs for each adapter and provider.

     

    3.
    On the General tab, the value against the Public Key Token label specifies the public key for the DLL. Similarly, the value against the Version label specifies the version number for the DLL.

    4.
    Copy the public key, and then click Cancel.


    Installing the Custom RFCs


    You only need to perform this task if you want to use the Data Provider for SAP. For instructions on installing custom RFCs, see the "Installing Custom RFCs for the Data Provider for SAP" topic in the SAP adapter documentation. The document is typically installed at <installation drive>:\Program Files\Microsoft BizTalk Adapter Pack\Documents.

     

    Important

     


    If you are using an earlier version of the custom RFCs provided with the BizTalk Adapter Pack, you must upgrade them to the RFCs provided with this release. You must do so by removing the earlier RFCs and instead installing the RFCs shipped with this release.

    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
    Saturday, July 23, 2011 9:52 AM
    Moderator
  • Steef,

    Thank you. We did update it before I saw the post, but I had my doubts about the patch up work.

    Now I know I was on the right path.

    Thanks again for your post.

     


    SRG
    Monday, July 25, 2011 6:17 PM