Oracle Database アダプターのインストールに関する問題のトラブルシューティング

Microsoft BizTalk アダプター パックをインストールすると、コンピューターに製品バイナリがコピーされ、各アダプターのバインドが登録されます。 このセクションでは、トラブルシューティング手法を使用してインストール エラーを解決する方法について説明し、既知の問題の一覧も示します。

セットアップ アクションのメッセージのログ記録

BizTalk アダプター パックセットアップ プログラムは、BizTalk アダプター パックをインストールする標準的なタスクを実行します。 さらに、セットアップでは、アダプター バインドの登録など、特定のカスタム アクションも実行されます。 標準アクションと、セットアップで実行されるカスタム アクションの両方のメッセージをログに記録できます。

  • BizTalk アダプター パックのセットアップでは、MSI を使用してアダプター固有のファイルがインストールされます。 そのため、セットアップのログ記録は標準の MSI ログ記録です。

  • セットアップ プログラムが実行するカスタム アクションのすべてのログは、%TEMP%\adaptersetup.log で入手できます。 ログ ファイルへのトレースが失敗した場合、トレースはイベント ログでも使用できます。

セットアップでアダプター バインドの登録に失敗する

問題

Microsoft BizTalk アダプター パックのセットアップ ウィザードでは、アダプター のバインドを登録できませんが、アダプターのインストールを続行します。

原因

これは、Windows Communication Foundation (WCF) のインストール、Microsoft Windows Communication Foundation (WCF) 基幹業務 (LOB) アダプター SDK のインストール、または machine.config ファイルが破損していることが原因で発生する可能性があります。 アダプター バインドは、machine.config ファイルに書き込まれます。

解決策

Oracle Database アダプター バインドを手動で登録します。

  1. コンピューター上の machine.config ファイルに移動します。 たとえば、32 ビット プラットフォームでは、machine.config はシステム ドライブ>:\WINDOWS\Microsoft.NET\Framework\version>\<CONFIG で<使用できます。

    このパスでは、<version> は.NET Frameworkのバージョンです。

  2. テキスト エディターを使用してファイルを開きます。

  3. Oracle Database アダプター バインドを登録するには:

    1. 要素 "system.serviceModel" を検索し、その下に次を追加します。

      <client>
        <endpoint binding="oracleDBBinding" contract="IMetadataExchange" name="oracleDb" />
      </client>
      
    2. system.serviceModel\extensions で要素 "bindingElementExtensions" を検索します。

    3. 不足している Oracle Database アダプター バインドを探します。 "bindingElementExtensions" ノードの下に次のセクションを追加します。

      Oracle Database アダプターの場合は、次を追加します。

      <add name="oracleDBAdapter" type="Microsoft.Adapters.OracleDB.OracleDBAdapterExtensionElement,Microsoft.Adapters.OracleDB, Version=<version>, Culture=neutral, PublicKeyToken=<public key>" />
      
    4. system.serviceModel\extensions で要素 "bindingExtensions" を検索します。

    5. 不足している Oracle Database アダプター バインドを探します。 "bindingExtensions" ノードの下に次のセクションを追加します。

      Oracle Database アダプターの場合は、次を追加します。

      <add name="oracleDBBinding" type="Microsoft.Adapters.OracleDB.OracleDBAdapterBindingSection,Microsoft.Adapters.OracleDB, Version=<version>, Culture=neutral, PublicKeyToken=<public key>" />
      

    Note

    公開キーとバージョンを確認する方法については、「公開キーとバージョン の決定」を参照してください。

  4. machine.config ファイルを保存して閉じます。

公開キーとバージョンの決定

Oracle Database アダプターの公開キーを確認するには、次の手順を実行します。

  1. Windows ディレクトリ (通常は C:\WINDOWS\assembly) に移動します。

  2. 公開キーとバージョンを指定する DLL を右クリックし、[ プロパティ] を選択します。 次の表に、Oracle Database アダプターの DLL の名前を示します。

    アダプター DLL の名前
    Oracle Database アダプター Microsoft.Adapters.OracleDB
  3. [ 全般 ] タブの [公開キー トークン ] ラベルに対する値は、DLL の公開キーを指定します。 同様に、 Version ラベルに対する値は DLL のバージョン番号を指定します。

  4. 公開キーをコピーし、[ キャンセル] をクリックします。

64 ビット インストールでアダプター サービス アドインまたはアダプター サービス参照の追加プラグインを使用しているときにエラーが発生しました

問題

64 ビット バージョンの BizTalk アダプター パックを実行している 64 ビット コンピューターで、アダプター サービス参照 Visual Studio プラグインまたはアダプター サービス BizTalk プロジェクト アドインを Visual Studio から使用すると、次のエラーが発生します。

No valid adapters are installed on this machine

原因

Oracle Database アダプターは WCF カスタム バインドであり、machine.config ファイルの System.ServiceModel に登録されます。 64 ビット プラットフォームには 2 つの machine.config ファイルがあり、1 つは 32 ビット アプリケーションで使用され、もう 1 つは 64 ビット アプリケーションで使用されます。 そのため、BizTalk アダプター パックの 64 ビット バージョンをインストールすると、セットアップ ウィザードによって、machine.config ファイルの 64 ビット バージョンにバインドが登録されます。 ただし、Visual Studio は 32 ビット プロセスとして実行されるため、Visual Studio からアダプター サービス アドインを起動すると、プラグインによって 32 ビット バージョンの machine.config ファイル内のバインドがチェックされ、エラーが発生します。

解像度

  • 64 ビット WCF LOB アダプター SDK のインストールに、BizTalk アダプター パックの 32 ビットバージョンと 64 ビット バージョンの両方をインストールします。

    重要

    64 ビット WCF LOB アダプター SDK のみをインストールする必要があります。 1 台のコンピューターでの 32 ビットおよび 64 ビット WCF LOB アダプター SDK のサイド バイ サイド インストールはサポートされていません。

  • Patch Set 11.1.0.7 を使用して、Oracle Client 11.1.0.6 用 Oracle Data Access Components の 32 ビットバージョンと 64 ビット バージョンの両方をインストールします。

    Note

    アプリケーションが最新バージョンの ODP.NET で動作することを確認するには、コンピューターに "ポリシー DLL" がインストールされ、GAC に登録されている必要があります。 詳細については、Oracle の Web サイトの 「Oracle Data Provider for .NET 」を参照してください。

64 ビット インストールでBizTalk Server管理コンソールで Oracle データベース アダプター ポートを構成しているときに、バインド エラーが無効です

問題

BizTalk Server管理コンソールでアダプターのポートを構成しようとすると、次のエラーが表示されます。

"Unable to create binding configuration element for editing. Check the values of the BindingType and BindingConfiguration properties.
(Microsoft.Biztalk.Adapter.Wcf.Converters.CreateBindingException) Unable to get binding type for binding extension "oracleDBBinding".
Verify the binding extension is registered in machine.config."

原因

Oracle Database アダプターは WCF カスタム バインドであり、machine.config ファイルの System.ServiceModel に登録されます。 64 ビット プラットフォームには 2 つの machine.config ファイルがあり、1 つは 32 ビット アプリケーションで使用され、もう 1 つは 64 ビット アプリケーションで使用されます。 そのため、BizTalk アダプター パックの 64 ビット バージョンをインストールすると、セットアップ ウィザードによって、machine.config ファイルの 64 ビット バージョンにバインドが登録されます。 ただし、BizTalk Server管理コンソールは 32 ビット プロセスとして実行されるため、アダプターのポートを構成すると、machine.config ファイルの 32 ビット バージョンのバインドがチェックされ、エラーが発生します。

解像度

  • 64 ビット WCF LOB アダプター SDK のインストールに、BizTalk アダプター パックの 32 ビットバージョンと 64 ビット バージョンの両方をインストールします。

    重要

    64 ビット WCF LOB アダプター SDK のみをインストールする必要があります。 1 台のコンピューターでの 32 ビットおよび 64 ビット WCF LOB アダプター SDK のサイド バイ サイド インストールはサポートされていません。

  • Patch Set 11.1.0.7 を使用して、Oracle Client 11.1.0.6 用 Oracle Data Access Components の 32 ビットバージョンと 64 ビット バージョンの両方をインストールします。

    Note

    アプリケーションが最新バージョンの ODP.NET で動作することを確認するには、コンピューターに "ポリシー DLL" がインストールされ、GAC に登録されている必要があります。 詳細については、Oracle Web サイト の「Oracle Data Provider for .NET 」を参照してください。

参照

Oracle Database アダプターのトラブルシューティング