BizTalk Adapter for Oracle E-Business Suite のアーキテクチャの概要
Microsoft BizTalk Adapter for Oracle E-Business Suite は、Windows Communication Foundation (WCF) のカスタム バインドです。 このバインディングには、Oracle E-Business Suite との通信を可能にする 1 つのカスタム トランスポート バインド要素が含まれています。 Oracle E-Business アダプターは、Microsoft Windows Communication Foundation (WCF) 基幹業務 (LOB) アダプター SDK ランタイムによってラップされ、WCF チャネル アーキテクチャを介してアプリケーションに公開されます。 Oracle E-Business アダプターは、Oracle Data Provider for .NET (ODP.NET) と Oracle クライアント (Windows 用 Oracle Data Access Components (ODAC) の一部である) を介して Oracle E-Business Suite と通信します。
次の図は、Oracle E-Business アダプターを使用して開発されたソリューションのエンドツーエンド アーキテクチャを示しています。
アダプターの使用
Oracle E-Business アダプターは、Oracle E-Business Suite を WCF サービスとしてクライアント アプリケーションに公開します。 Oracle E-Business Suite で操作を実行し、データにアクセスするために、クライアント アプリケーションは WCF チャネルを介して Oracle E-Business アダプターと SOAP メッセージを交換します。 前の図は、Oracle E-Business アダプターを使用できる 4 つの方法を示しています。 これらは次のとおりです。
WCF チャネル モデル アプリケーションを使用します。 WCF チャネル モデル アプリケーションは、WCF チャネル モデルを使用して Oracle E-Business アダプターと SOAP メッセージを直接交換することで、Oracle E-Business Suite に対する操作を実行します。
WCF サービス モデル アプリケーションを使用します。 WCF サービス モデル アプリケーションは、WCF クライアントのメソッドを呼び出して、Oracle E-Business Suite に対する操作を実行します。 WCF クライアントは、Oracle E-Business アダプターによって公開される操作を .NET メソッドとしてモデル化します。 Microsoft Windows Communication Foundation (WCF) 基幹業務 (LOB) アダプター SDK または WCF ServiceModel メタデータ ユーティリティ ツール (svcutil.exe) を使用して、Oracle E-Business アダプターによって公開されるメタデータから WCF クライアント クラスを作成できます。
BizTalk 受信場所または Microsoft BizTalk WCF-Custom アダプターを使用するように構成された送信ポートを使用します。 WCF-Custom アダプターを使用すると、WCF 拡張機能を使用できます。 WCF-Custom アダプターを使用すると、Oracle EBS バインディングと受信場所または送信ポートの動作を選択して構成できます。 BizTalk Server ソリューションで Oracle E-Business アダプターを使用する方法の詳細については、「Oracle E-Business Suite アダプターを使用して BizTalk アプリケーションを開発する」を参照してください。
IIS でホストされる Web サービスを使用します。 このシナリオでは、アダプターを使用して生成された WCF サービス プロキシは、基本的なHttpBinding WCF バインディングを使用して IIS でホストされます。 これにより、サービス コントラクトが Web サービスとして外部ユーザーに公開されます。 IIS は実行時にアダプターを自動的にホストします。これにより、Oracle E-Business Suite と通信します。
Oracle E-Business アダプターと ODAC は、アダプターを使用するアプリケーションまたはサービスで常にインプロセスでホストされます。
Oracle EBS アダプターと WCF
WCF は、クライアントとサービス間のチャネルを介した SOAP メッセージの交換に基づくプログラミング モデルを提供します。 これらのメッセージは、通信しているクライアントとサービスによって公開されるエンドポイント間で送信されます。 エンドポイントは次で構成されます。
メッセージを受信する場所を指定するエンドポイント アドレス
メッセージの交換に使用される通信プロトコルを指定するバインディング
コントラクト。エンドポイントによって公開される操作とデータ型を指定します。
バインドは、メッセージをエンドポイントと交換する方法を定義するために、互いに積み重ね合う 1 つ以上のバインド要素で構成されます。 少なくとも、バインディングでは、エンドポイントとメッセージを交換するために使用されるトランスポートとエンコードを指定する必要があります。 エンドポイント間のメッセージ交換は、1 つ以上のチャネルで構成されるチャネル スタックを介して行われます。 各チャネルは、エンドポイント用に構成されたバインド内のバインド要素の 1 つの具象実装です。 WCF ドキュメントには、WCF と WCF プログラミング モデルの詳細が含まれています。
Microsoft BizTalk Adapter for Oracle E-Business Suite は、WCF カスタム バインディングである Oracle E-Business Suite バインディング (Microsoft.Adapters.OracleEBS.OracleEBSBinding) を公開します。 既定では、このバインディングには、Oracle E-Business Suite Adapter Binding Element (Microsoft.Adapters.OracleEBS.OracleEBSAdapter) という 1 つのカスタム トランスポート バインド要素が含まれています。これにより、Oracle E-Business Suite に対する操作が可能になります。
Microsoft.Adapters.OracleEBS.OracleEBSBinding (Oracle E-Business Suite Binding) と Microsoft.Adapters.OracleEBS.OracleEBSAdapter (Oracle E-Business Suite Adapter Binding Element) はパブリック クラスであり、構成システムにも公開されます。 Oracle E-Business Suite Adapter Binding Element はパブリックに公開されているため、Oracle E-Business アダプターの機能を拡張できる独自のカスタム WCF バインドを構築できます。 たとえば、WCF チャネルまたはサービス モデル ソリューションでエンタープライズ シングル サインオン (SSO) をサポートするカスタム バインドを実装できます。 これを行う理由は、データベース操作を 1 つの多機能操作に集約するか、カスタム アプリケーションによって実装された操作と Oracle E-Business Suite の操作の間でスキーマ変換を実行するためです。
Oracle EBS アダプターと WCF LOB SDK
Oracle E-Business アダプターは、Microsoft Windows Communication Foundation (WCF) 基幹業務 (LOB) アダプター SDK 上に構築され、WCF LOB アダプター SDK ランタイム上で実行されます。
WCF LOB アダプター SDK は、Oracle E-Business アダプターがユーザーとアダプター クライアントに豊富な機能セットを提供するために使用するソフトウェア フレームワークとツール インフラストラクチャを提供します。 また、Oracle E-Business アダプターが Windows Communication Foundation (WCF) とインターフェイスするソフトウェア レイヤーとしても機能します。 ODP.NET は、Oracle E-Business アダプターが Oracle データベースとインターフェイスするレイヤーとして機能します。
次の図は、Oracle E-Business アダプター、WCF LOB アダプター SDK、および ODP.NET の内部コンポーネント間の関係を示しています。
ODP.NET
Oracle E-Business アダプターは、ODP.NET と Oracle クライアントを介して Oracle E-Business Suite と接続します。 これらのコンポーネントはどちらも Oracle Data Access Components (ODAC) の一部です。
ODP.NET は、ADO.NET インターフェイスと一致する Oracle E-Business Suite のデータ プロバイダーを実装します。 Oracle E-Business アダプターは、ODP.NET によって公開されるクラスを使用して、Oracle E-Business Suite を操作します。
Oracle クライアントは、Oracle E-Business Suite への接続を提供します。 Oracle E-Business アダプターへの接続 URI を指定して、Oracle E-Business Suite への接続を確立します。 接続 URI は、次の 2 つの方法で指定できます。
tnsnames.ora の使用。 この方法では、アダプター クライアントによって提供される接続 URI に、tnsnames.ora ファイルで指定された net サービス名のみが含まれます。 アダプターは、サーバー名、サービス名、ポート番号などの接続パラメーターを、ファイル内の net サービス名エントリから抽出します。 この方法を使用するには、Oracle クライアントを実行しているコンピューターを、tnsnames.ora ファイルに Oracle データベースの net サービス名を含むように構成する必要があります。
tnsnames.ora を使用しない。 この方法では、アダプター クライアントは接続 URI で接続パラメーターを直接指定します。 クライアント コンピューターの tnsnames.ora ファイルに net サービス名が存在する必要はありません。 この方法では、クライアント コンピューターに tnsnames.ora ファイルが存在する必要もありません。
接続 URI の詳細については、「 Oracle E-Business Suite への接続を作成する」を参照してください。