手順 1: Oracle データベースの vPrev BizTalk プロジェクトを変更する
完了までの時間: 10 分
目的: この手順では、既存の vPrev BizTalk プロジェクトに次の変更を加えます。
SCOTT に対する挿入操作のメタデータを生成します。WCF ベースの Oracle データベース アダプターを使用した CUSTOMER テーブル。
vPrev Oracle データベース アダプターを使用して挿入操作を実行するための要求メッセージを、WCF ベースの Oracle データベース アダプターを使用して挿入操作を実行するための要求メッセージにマップします。
WCF ベースの Oracle データベース アダプターを使用して受信した応答メッセージを、vPrev Oracle データベース アダプターの応答メッセージにマップします。
前提条件
- SCOTT に対して挿入操作を実行するには、vPrev BizTalk プロジェクトが必要です。Oracle データベースの CUSTOMER テーブル。
vPrev BizTalk プロジェクトを変更する
SCOTT に対する挿入操作のメタデータを生成します。WCF ベースの Oracle データベース アダプターを使用した CUSTOMER テーブル。 アダプター サービス BizTalk プロジェクト アドインを使用してメタデータを生成できます。
メタデータを生成する方法については、「 Visual Studio で Oracle Database 操作のメタデータを取得する」を参照してください。 スキーマが生成されると、 OracleDBBindingSchema.xsd のような名前のファイルが BizTalk プロジェクトに追加されます。 このファイルには、SCOTT に対して挿入操作を実行するメッセージを送信するためのスキーマが含まれています。WCF ベースの Oracle データベース アダプターを使用した Oracle データベース内の CUSTOMER テーブル。
挿入操作のメタデータを生成すると、ポート バインド ファイルも作成されます。 次の手順では、このバインド ファイルを使用して、Oracle データベースにメッセージを送信する WCF-Custom 送信ポートを作成します。 操作の SOAP アクションは、メタデータを生成した操作にも設定されます。 たとえば、挿入操作のメタデータを生成する場合、送信ポートの SOAP アクションの操作名は "Insert" になります。 ただし、オーケストレーションの一部として作成する論理送信ポートの操作名は、"Operation_1" のように異なる場合があります。 その結果、送信ポートを使用して Oracle データベースにメッセージを送信すると、エラーが発生します。 これを防ぐには、オーケストレーションの論理送信ポートの操作名が、メタデータを生成した操作名と同じであることを確認します。
そのため、このチュートリアルでは、挿入操作のメタデータを生成するため、論理送信ポート操作の名前を "挿入" に変更します。
要求メッセージの場合は、vPrev Oracle データベース アダプターを使用して生成されたスキーマを、WCF ベースの Oracle データベース アダプターを使用して生成されたスキーマにマップします。
BizTalk マッパーを BizTalk プロジェクトに追加します。 BizTalk プロジェクトを右クリックし、[ 追加] をポイントして、[ 新しい項目] をクリックします。
[ 新しい項目の追加 ] ダイアログ ボックスの左側のウィンドウで、[ マップ ファイル] を選択します。 右側のウィンドウで、[ マップ] を選択します。 マップの名前 ( RequestMap.btm など) を指定します。 [追加] をクリックします。
[ソース スキーマ] ペインで、[ Open Source Schema]\(ソース スキーマを開く\) をクリックします。
[ BizTalk 型ピッカー ] ダイアログ ボックスで、プロジェクト名を展開し、[ スキーマ] を展開して、vPrev Oracle データベース アダプターの要求メッセージのスキーマを選択します。 このチュートリアルでは、 Oracle_Migration.CUSTOMERService_CUSTOMER_x5d を選択します。 [OK] をクリックします。
[ ソース スキーマのルート ノード ] ダイアログ ボックスで、[ 挿入 ] を選択し、[ OK] をクリックします。
[変換先スキーマ] ペインで、[ 変換先スキーマを開く] をクリックします。
[ BizTalk 型ピッカー ] ダイアログ ボックスで、プロジェクト名を展開し、[ スキーマ] を展開して、WCF ベースの Oracle データベース アダプターの要求メッセージのスキーマを選択します。 このチュートリアルでは、 Oracle_Migration.OracleDBBindingSchema を選択します。 [OK] をクリックします。
[ ターゲット スキーマのルート ノード ] ダイアログ ボックスで、[ 挿入 ] を選択し、[ OK] をクリックします。
次の図に示すように、両方のスキーマのそれぞれの要素をマップします。
Oracle データベース する
マップを保存します。
応答メッセージの場合は、vPrev Oracle データベース アダプターを使用して生成されたスキーマを、WCF ベースの Oracle データベース アダプターを使用して生成されたスキーマにマップします。
BizTalk マッパーを BizTalk プロジェクトに追加します。 BizTalk プロジェクトを右クリックし、[ 追加] をポイントして、[ 新しい項目] をクリックします。
[ 新しい項目の追加 ] ダイアログ ボックスの左側のウィンドウで、[ マップ ファイル] を選択します。 右側のウィンドウで、[ マップ] を選択します。 ResponseMap.btm など、マップの名前を指定します。 [追加] をクリックします。
[ソース スキーマ] ペインで、[ Open Source Schema]\(ソース スキーマを開く\) をクリックします。
[ BizTalk 型ピッカー ] ダイアログ ボックスで、プロジェクト名を展開し、[ スキーマ] を展開して、WCF ベースの Oracle Database アダプターの応答メッセージのスキーマを選択します。 このチュートリアルでは、 Oracle_Migration.OracleDBBindingSchema を選択します。 [OK] をクリックします。
[ ソース スキーマのルート ノード ] ダイアログ ボックスで、[ 挿入][応答 ] の順に選択し、[OK] をクリック します。
[変換先スキーマ] ペインで、[ 変換先スキーマを開く] をクリックします。
[ BizTalk 型ピッカー ] ダイアログ ボックスで、プロジェクト名を展開し、[ スキーマ] を展開して、vPrev Oracle データベース アダプターの応答メッセージのスキーマを選択します。 このチュートリアルでは、 Oracle_Migration.CUSTOMERService_CUSTOMER_x5d を選択します。 [OK] をクリックします。
[ ターゲット スキーマのルート ノード ] ダイアログ ボックスで、[ 挿入][応答] の順に選択し、[OK] をクリック します。
WCF ベースの Oracle Database アダプターに準拠する応答メッセージのスキーマには、追加の InsertResult 要素が含まれていることがわかります。 これをスキーマから削除し、両方のスキーマで InsertResponse 要素をマップする必要があります。
これを行うには、 ツールボックスから String Left Trim Functoid をドラッグし、マッパー グリッドにドロップします。 ソース スキーマの InsertResponse 要素を Functoid に接続します。 同様に、変換先スキーマの InsertResponse 要素を Functoid に接続します。 次の図は、Functoid を介して 2 つの要素がどのようにマップされるかを示しています。
Oracle データベース する
Note
詳細については、UI ガイダンスと開発者 API 名前空間リファレンスの「String Left Trim Functoid」を参照してください。
マップを保存します。
BizTalk ソリューションを保存してビルドします。 ソリューションを右クリックし、[ソリューションの ビルド] をクリックします。
ソリューションを展開する。 ソリューションを右クリックし、[ソリューションの 配置] をクリックします。
次の手順
「 手順 2: SQL アダプターを使用して Biztalk Server 管理コンソールでオーケストレーションを構成する」で説明されているように、WCF カスタム送信ポートを作成し、この手順で作成したマップを使用するように構成します。