この章の構成は、次のとおりです。
ここでは、サンプルを使用するために必要なコンポーネントとシステムの準備方法について説明します。
前提条件
この例を使用するために必要なインストールと構成の要件は次のとおりです。
Microsoft Windows XP、Windows Vista、Windows Server 2003またはWindows Server 2008が動作し、1GBのRAMを搭載したパーソナル・コンピュータであること。
使用しているTuxedoアダプタ(TuxedoまたはTuxedo Queue)をOracle Application Serverにデプロイしてあること。
OracleAS Tuxedo Adapterをアウトバウンドまたはインバウンド処理用に構成してあること。 確定リンクを参照してください。
Oracle JDeveloperをインストールしてあること。
レガシー・アダプタをデプロイしてあること。
必要なマシンがロードされたOracle Studioがあること。 「Oracle StudioでのOracleAS Adapter for Tuxedoの構成」を参照してください。
この章では、BPELを使用してOracle Tuxedoアダプタを使用する場合の構成手順の例を示します。 これらの例を使用する前に、次のことをよく理解していることが必要です。
J2CA接続の作成方法。 詳細は、「OracleAS Adapter for TuxedoとWebLogicの統合」を参照してください。
Oracle Studioを使用したOracleAS Adapters for Tuxedoの構成方法。 詳細は、「Oracle StudioでのOracleAS Adapter for Tuxedoの構成」を参照してください。
OracleAS Adapters for TuxedoとBPELを統合するには、次のプロセスを実行します。
デザインタイム: 「Oracle StudioでのOracleAS Adapter for Tuxedoの構成」で説明されているように、OracleAS Adapters for TuxedoはOracle Studioで構成します。
ランタイム: BPELプロセスをJDeveloperでデプロイした後、構成をテストできます。 次を参照
この項では、Tuxedoアダプタに接続するBPELインバウンド・プロセスの作成方法について説明します。 インバウンド用のTuxedoアダプタの構成方法の詳細は、確定リンクを参照してください。
BPEL Process Managerでプロセスを構成するには、JDeveloperを使用します。 この項では、JDeveloperを使用してTuxedoアダプタ用のBPELインバウンド・プロセスを作成する方法について説明します。 このインバウンド・プロセスのサンプルの実行には、次の2つの構成タイプが必要です。
インバウンド・プロセスを設計する前に、OracleAS Adapter for TuxedoとBPEL Process Managerを統合して接続します。 詳細は、「OracleAS Adapter for Tuxedoの統合」を参照してください。
インバウンド・プロセスの設計を始める前に、次のことを実行する必要があります。
OracleAS Adapter for VSAMを統合します。 詳細は、「OracleAS Adapter for TuxedoとWebLogicの統合」を参照してください。
J2CA VSAMリソース・アダプタに対する接続を構成します。この作業は、コネクション・ファクトリを作成して行います。この方法の詳細は、「Tuxedo Queueインバウンド・アダプタの構成」を参照してください。
スキーマ・ファイルを記述します。 まず、Oracle Studioを使用してfindDoctor
という相互作用を作成します。詳細は、「Tuxedo Queueインバウンド・アダプタの構成」を参照してください。
BPEL PMサーバー接続をJDeveloperで作成します。
相互作用のためのWSDLとバインディング・ファイルを作成します。 この作業は、JDeveloperでエンドポイントの作成を始める前に、Oracle Studioで行います。 作成した相互作用に基づいて、Oracle StudioによりWSDLとバインディング(jca)ファイルが自動的に作成されます。 これらのファイルの作成の詳細は、確定リンクを参照してください。
この項では、BPELインバウンド・プロセスをデプロイするために必要なデザインタイムの手順について説明します。
インバウンド用のBPELプロジェクトを作成するには、次の作業を行います。
JDeveloperで新しいSOAプロジェクトを作成します。
SOAプロジェクトを右クリックして「新規」を選択します。 図6-1に示すような「新規ギャラリ」が表示されます。
「カテゴリ」リストで「SOA層」を展開し、「サービス・コンポーネント」を選択します。
「項目」リストから「BPELプロセス」を選択して、「OK」をクリックします。 図6-2に示すような「BPELプロセスの作成」画面が表示されます。
「BPELプロセス」画面で次のように入力します。
BPELプロセスの名前を入力します。たとえば、BPELInbound1と入力します。
「テンプレート」リストで、「サービスを後で定義」を選択します。
「OK」をクリックします。 BPELプロセスがビジュアル・エディタに表示されます。
「インバウンド・プロセスにサードパーティ・アダプタを使用」の手順を続けます。
サードパーティ・アダプタをパートナ・リンクとして使用して、インバウンド・プロセスを作成します。 SOAは相互作用で定義されているSQLステートメントを実行し、それをリソース・アダプタに渡します。 サードパーティ・アダプタを作成するには、次の手順を実行します。
左側の「プロジェクト」領域で、composite.xml
をダブルクリックします。 ビジュアル・エディタの下部で、必要に応じて「設計」タブをクリックします。 図6-3は、ビジュアル・エディタのコンポジット・ビューです。
図6-4に示すように、ビジュアル・エディタの「公開されたサービス」レーンにサードパーティ・アダプタをドラッグします。
サードパーティ・アダプタをJDeveloperにドラッグすると、図6-5に示すような「サード・パーティ・アダプタ・サービスの作成」画面が表示されます。
「WSDL URL」フィールドの隣のボタンをクリックして、使用しているWSDLファイルを参照します。
「タイプ」リストで、「サービス」を選択します。
「JCAファイル」フィールドの隣のボタンをクリックして、使用しているバインディング・ファイルを参照します。
「OK」をクリックして閉じます。 図6-6に示すようなコンポジット設計が作成されます。
次に、「BPELインバウンド・プロセスの設計」の手順を実行します。
インバウンド・プロセスの設計手順を始める前に、バインディング(jca)ファイルでActivationSpecプロパティを構成することが必要な場合があります。 インバウンド・バインディング・ファイルの処理の詳細は、「Tuxedo Queueインバウンド相互作用のバインディングの構成」を参照してください。
BPELインバウンド・プロセスを定義する手順は、次のとおりです。
コンポジットで、図6-7に示すようにBPELプロセスをサードパーティ・アダプタに接続します。
BPELプロセスをダブルクリックします。
図6-8で示すように、コンポーネント・パレットのBPELプロセスのアクティビティ・セクションから、「Receive」、「Assign」、「Invoke」プロセスを、エディタにドラッグします。
ビジュアル・エディタで、「Receive」アクティビティをサードパーティ・アダプタ・サービス(Service1
)に接続します。 図6-9に示すような「Receiveの編集」ダイアログ・ボックスが表示されます。
「Receiveの編集」ダイアログ・ボックスで、次の作業をします。
Receiveアクティビティの名前を入力します。
変数を作成します。 「変数」フィールドの右側のプラス記号をクリックし、表示される「変数の作成」ダイアログ・ボックスで「OK」をクリックします。
「インスタンスの作成」チェック・ボックスが選択されていることを確認します。
「OK」をクリックしてダイアログ・ボックスを閉じ、情報を受け入れてから、プロジェクトをデプロイします。
次の手順を実行し、プロジェクトをOracle Application Serverにデプロイします。
アプリケーション・ナビゲータでプロジェクトを右クリックし、「デプロイ」を探して、デプロイするプロジェクトを選択します。
「デプロイ」ウィザードで、「アプリケーション・サーバーにデプロイ」を選択します。
「次へ」をクリックしてウィザードの最後まで進み、「終了」をクリックしてデプロイします。
この項では、使用しているアダプタ・ファイルへの接続を作成する方法について説明します。 接続を作成する手順は、次のとおりです。
ファイル・アダプタを作成し、WriteRes
などの名前を付けます。
「次へ」をクリックし、「Write File」を選択します。 ファイルにWrite Message
などの名前を付けます。
「次へ」をクリックし、書込み先のメッセージ・ファイルのパスを入力します。
メッセージ・スキーマの選択画面で、ファイルmessage.xsd
を参照します。 このファイルはこのプロセスの開始前に作成されています。 詳細は、「BPELインバウンド・プロセスの設計」を参照してください。
「メッセージ・タイプ」で「bigOrderEvent
」を選択し、「OK」をクリックします。
Invokeアクティビティに対し、デフォルト名を使用して入力変数を作成します。
Assignedアクティビティに対し、コピー操作を作成します。
この項では、プロジェクトをテストして、インバウンド・プロセスが正しく実行されることを確認するための方法について説明します。 XMLユーティリティを使用して、作成したファイル・アダプタに定義されているイベントをOracle Connectで呼び出します。 「接続の作成」を参照してください。 このイベントはOracle Connectから呼び出されるため、インバウンド・イベントになります。 OracleASのSOAサービスで開始されるイベントはアウトバウンド・イベントです。 詳細は、「BPELアウトバウンド・プロセスのデプロイ」を参照してください。 インバウンドのランタイムの構成には、「XMLユーティリティを使用したイベントのトリガ」という1つのステップがあります。
XMLユーティリティを使用してSQL文を作成し、リクエストしているイベントをトリガします。 イベントをトリガする手順は、次のとおりです。
「スタート」メニューから「すべてのプログラム」→「Oracle」→サーバー・ユーティリティ→XMLユーティリティを選択します。 XMLユーティリティが表示されます。
次の情報をXMLユーティリティの接続セクションに入力します。
サーバー: Tuxedo用OracleASアダプタが配置されているマシンの名前。
ワークスペース: Tuxedo用OracleASアダプタが配置されているワークスペースの名前。 使用可能なワークスペースのリストがこのフィールドのリストに表示されます。 ワークスペースはOracle Studioで定義します。
アダプタ: Tuxedo用OracleASアダプタの名前。 使用可能なアダプタのリストがこのフィールドのリストに表示されます。 アダプタはOracle Studioで定義します。
接続をクリックして、選択されているマシンに接続します。
相互作用フィールドに、呼び出す相互作用の名前を入力します。 これはOracle Studioで定義します。
入力ウィンドウに、相互作用を呼び出す文を入力します。 上の図の例を参照してください。
実行をクリックします。 実行に成功すると、次の例のような出力が返されます。
<?xml version="1.0"?> <bigOrderEvent ORDER_ID="1"ORDERED_BY="1" xmlns+"noNamespace://ordersQueue"/>
この項では、OracleAS Adapter for Tuxedoに接続するメディエータ・インバウンド・プロセスを作成する方法を説明します。
メディエータのプロセスを構成するにはJDeveloperを使用します。 この項では、JDeveloperを使用してTuxedoリソース・アダプタ用のメディエータ・アウトバウンド・プロセスを作成する方法について説明します。 後のトピックでは、BPELアウトバウンド・プロセスのデプロイ方法について説明します。
インバウンド・プロセスの設計を始める前に、次のことを実行する必要があります。
OracleAS Adapter for VSAMを統合します。 詳細は、「OracleAS Adapter for TuxedoとWebLogicの統合」を参照してください。
J2CA VSAMリソース・アダプタに対する接続を構成します。この作業は、コネクション・ファクトリを作成して行います。この方法の詳細は、「Tuxedo Queueインバウンド・アダプタの構成」を参照してください。
相互作用のためのWSDLとバインディング・ファイルを作成します。 この作業は、JDeveloperでエンドポイントの作成を始める前に、Oracle Studioで行います。 作成した相互作用に基づいて、Oracle StudioによりWSDLとバインディング(jca)ファイルが自動的に作成されます。 これらのファイルの作成の詳細は、確定リンクを参照してください。
インバウンド・メディエータ・プロジェクトを作成するには、次の作業を行います。
JDeveloperで新しいSOAプロジェクトを作成します。
SOAプロジェクトを右クリックして「新規」を選択します。 図6-11に示すような「新規ギャラリ」が表示されます。
「カテゴリ」リストで「SOA層」を展開し、「サービス・コンポーネント」を選択します。
「項目」リストから「メディエータ」を選択して、「OK」をクリックします。 図6-12に示すような「メディエータの作成」画面が表示されます。
「BPELプロセス」画面で次のように入力します。
メディエータ・プロセスの名前を入力します。たとえば、MedInbound1と入力します。
「テンプレート」リストで、「サービスを後で定義」を選択します。
「OK」をクリックします。 メディエータ・プロセスがビジュアル・エディタに表示されます。
「インバウンド・プロセスにサードパーティ・アダプタを使用」の手順を続けます。
サードパーティ・アダプタをパートナ・リンクとして使用して、インバウンド・メディエータを作成します。 SOAは相互作用で定義されているSQLステートメントを実行し、それをリソース・アダプタに渡します。 サードパーティ・アダプタを作成するには、次の手順を実行します。
左側の「プロジェクト」領域で、composite.xml
をダブルクリックします。 ビジュアル・エディタの下部で、必要に応じて「設計」タブをクリックします。 図6-13は、ビジュアル・エディタのコンポジット・ビューです。
図6-14に示すように、ビジュアル・エディタの「公開されたサービス」レーンにサードパーティ・アダプタをドラッグします。
サードパーティ・アダプタをJDeveloperにドラッグすると、図6-15に示すような「サード・パーティ・アダプタ・サービスの作成」画面が表示されます。
「WSDL URL」フィールドの隣のボタンをクリックして、使用しているWSDLファイルを参照します。
「タイプ」リストで、「サービス」を選択します。
「JCAファイル」フィールドの隣のボタンをクリックして、使用しているバインディング・ファイルを参照します。
「OK」をクリックして閉じます。 図6-16に示すようなコンポジット設計が作成されます。
次に、「ファイル・アダプタの作成」の手順を実行します。
ファイル・アダプタを作成する手順は、次のとおりです。
コンポジットで、メディエータをサードパーティ・アダプタに接続します。
コンポーネント・パレットの右側のSOAセクションから、ファイル・アダプタをビジュアル・エディタの「外部参照」レーンにドラッグします。 「アダプタ構成ウィザード」が表示されます。
「アダプタ構成ウィザード」の最初の画面で、アダプタ・サービスの名前を入力して、「次へ」をクリックします。
「アダプタ・インタフェース」画面で、「インバウンド・プロセスにサードパーティ・アダプタを使用」で選択したものと同じWSDLファイルを選択します。 図6-17は「アダプタ・インタフェース」画面です。
「次へ」をクリックし、ウィザードの以降の各画面ではデフォルトの設定を使用します。 終了するときは、、「終了」をクリックします。
メディエータをファイル・アダプタに接続して、操作を選択します。
次に、「インバウンド・メディエータの設計」の手順を実行します。
このステップでは、BPELプロセスを設計します。 インバウンド・メディエータを設計するには、次の作業を行います。
コンポジットでメディエータをダブルクリックします。
静的ルーティング・ルールを作成します。
図6-18に示すように「フィルタ式」を開きます。
次に、「マッピング・ルールの作成とファイルのマップ」の手順を実行します。
マッピング・ファイルを作成してファイルをマップするには、次の手順を実行する必要があります。
図6-18に示すように、「フィルタ式」画面で「次を使用して変換」フィールドの隣にあるアイコンをクリックします。 図6-19に示すような「リクエスト・トランスフォーメーション・マップ」画面が表示されます。
「リクエスト・トランスフォーメーション・マップ」で「新規マッパー・ファイルの作成」を選択します。 デフォルト値を使用します。
「OK」をクリックします。
ビジュアル・エディタで、クリックしてmediator.mplanタブに戻ります。
作成したマッパー・ファイルのタブをクリックします。 要素を接続します。
保存した後、プロジェクトをデプロイします。
次の手順を実行し、プロジェクトをOracle Application Serverにデプロイします。
アプリケーション・ナビゲータでプロジェクトを右クリックし、「デプロイ」を探して、デプロイするプロジェクトを選択します。
「デプロイ」ウィザードで、「アプリケーション・サーバーにデプロイ」を選択します。
「次へ」をクリックしてウィザードの最後まで進み、「終了」をクリックしてデプロイします。
この項では、Tuxedoアダプタに接続するBPELインバウンド・プロセスの作成方法について説明します。 アウトバウンド用のTuxedoアダプタの構成方法の詳細は、確定リンクを参照してください。
BPEL Process Managerでプロセスを構成するには、JDeveloperを使用します。 この項では、JDeveloperを使用してTuxedoアダプタ用のBPELアウトバウンド・プロセスを作成する方法について説明します。 この項の構成は、次のとおりです。
アウトバウンド・プロセスを設計する前に、OracleAS Adapter for TuxedoとBPEL Process Managerを統合して接続します。 詳細は、第4章「OracleAS Adapter for Tuxedoの統合」を参照してください。
アウトバウンド・プロセスの設計を始める前に、次のことを実行する必要があります。
OracleAS Adapter for VSAMを統合します。 詳細は、「OracleAS Adapter for TuxedoとWebLogicの統合」を参照してください。
J2CA VSAMリソース・アダプタに対する接続を構成します。この作業は、コネクション・ファクトリを作成して行います。 この方法の詳細は、「Tuxedo Gateway同期インバウンド・アダプタの構成」を参照してください。
BPEL PMサーバー接続をJDeveloperで作成します。
相互作用のためのWSDLを作成します。この作業は、JDeveloperでエンドポイントの作成を始める前に、JDeveloper接続エクスプローラで行います。 作成した相互作用に基づいて、JDeveloperによりWSDLが自動的に作成されます。 接続エクスプローラで、Oracle Studioで構成したOracle Connectサーバーを参照し(『Oracle Application Serverレガシー・アダプタ・インストレーション・ガイド』を参照)、「findDoctor」という相互作用をダブルクリックし、WSDLを表示して作成します。
このセクションでは、2つのBPELアウトバウンド・プロセスをデプロイするために必要なデザインタイムの手順について説明します。 これらのプロセスでは、TOUPPERというWebサービスが使用されています。 このサービスは、小文字の文字列を読み取り、大文字で書き込みます。 アウトバウンド・プロセスを作成するために必要な手順は、次のとおりです。
アウトバウンド・プロセスを設計する前に、「OracleAS Adapter for Tuxedoを使用したアウトバウンド相互作用の作成」の説明を参照し、Oracle Studioを使用してToupper
相互作用を定義します。
アウトバウンド用のBPELプロジェクトを作成するには、次の作業を実行します。
JDeveloperの「表示」メニューで、「アプリケーション・ナビゲータ」を選択します。
アプリケーション・ナビゲータで、使用するアプリケーションを右クリックして、「新規プロジェクト」を選択します。「新規ギャラリ」ダイアログ・ボックスが表示されます。
「項目」リストで、「BPELプロセス・プロジェクト」を選択して、「OK」をクリックします。「BPELプロジェクト作成ウィザード-プロジェクトの設定」ダイアログ・ボックスが表示されます。
「BPELプロジェクト作成ウィザード-プロジェクトの設定」ダイアログ・ボックスで、次の作業をします。
BPELプロセスの名前を入力します。たとえば、BPELOutbound1と入力します。
「テンプレート」リストで、「空のBPELプロセス」を選択します。
「次へ」をクリックして、入出力のスキーマ要素を確認するか、「終了」をクリックします。
ファイルを文字列入力として読み取るためのファイル・アダプタを作成します。 SOAはこの文字列を読み取り、リソース・アダプタに渡します。 リソース・アダプタはこの文字列の情報を処理し、大文字で返します。 ファイル・アダプタを作成する手順は、次のとおりです。
「パートナ・リンク」をビジュアル・エディタのサービス・レーンにドラッグします。「パートナ・リンクの作成」ダイアログ・ボックスが表示されます。
アダプタ・ウィザード・ボタンをクリックします。 前述の図に示すとおり、このボタンは、「パートナ・リンクの作成」ダイアログ・ボックスの「WSDL設定」セクションの3番目のボタンです。
アダプタ構成ウィザードに、次の情報を入力します。
ステップ1、「アダプタ・タイプ」: 「ファイル・アダプタ」を選択します。
ステップ2、「サービス名」: ReadStr
と入力します。
ステップ3、「操作」:
「操作タイプ」: 「Read File」を選択します。
「操作名」: ReadLowerStr
と入力します。
ステップ4、「ファイル・ディレクトリ」
ディレクトリ名は次の方法で指定します: 「物理パス」を選択します。
着信ファイル用のディレクトリ(物理パス): 着信ファイルを保存するフォルダへのフルパスを入力します。たとえば、C:\temp
のように入力します。
ステップ5、「ファイルのフィルタ処理」
インクルード・ファイルの名前パターン: *xml
と入力します。
ステップ6、「ファイル・ポーリング」:
ポーリング頻度: 1
と入力して、リストから「秒」を選択します。
ステップ7、「メッセージ」:
スキーマ・ファイルのURL: TOUPPERSchema.xsd
と入力します。
スキーマ要素: ToUpperData
と入力します。
「Finish」をクリックします。
このステップでは、BPELプロセスを設計します。 BPELアウトバウンド・プロセスを設計するには、次の作業をします。
「コンポーネント・パレット」-「プロセス・アクティビティ」ペインから、「BPELアウトバウンド・プロセス用のBPELプロジェクトの作成」のステップで作成したプロセスのエディタに「Receive」、「Assign」および「Invoke」の各アクティビティをドラッグします。
ビジュアル・エディタで、「Receive_1」アクティビティをReadStrファイル・アダプタに接続します。Receiveの編集ダイアログ・ボックスが開きます。
「Receiveの編集」ダイアログ・ボックスで、次の作業をします。
Receiveアクティビティの名前を入力します。たとえば、Receive_1
のように入力します。
変数を作成します。 「変数」フィールドの右側の最初のボタンをクリックし、表示される「変数の作成」ダイアログ・ボックスで「OK」をクリックします。
「インスタンスの作成」チェック・ボックスが選択されていることを確認します。
「OK」をクリックし、ダイアログ・ボックスを閉じて、情報を受け入れます。
このステップでは、使用しているTuxedoアダプタへのパートナ・リンクを作成します。 パートナ・リンクを作成するには、次の作業をします。
「パートナ・リンク」をビジュアル・エディタのサービス・レーンにドラッグします。「パートナ・リンクの作成」ダイアログ・ボックスが表示されます。
「パートナ・リンクの作成」ダイアログ・ボックスで、「サービス・エクスプローラ」ボタンをクリックします。このボタンは左から2番目のボタンで、前のステップの図に示されています。「サービス・エクスプローラ」ダイアログ・ボックスが表示されます。
サービス・エクスプローラで、使用する接続、アダプタ、アプリケーションの順に開き、使用するWSDLファイルが見つかるまで参照を続けます。ファイルを選択し、「OK」をクリックします。
選択したWSDLファイルへのパスが、「パートナ・リンクの作成」ダイアログ・ボックスの「WSDLファイル」フィールドに表示されます。WSDLファイルに定義されているパートナ・リンクが、「パートナ・リンク・タイプ」フィールドに表示されます。
「パートナ・リンクの作成」ダイアログ・ボックスに、次の情報を入力します。
「パートナ・ロール」リストで、「TOUPPERRole」を選択します。
「マイ・ロール」リストで、「指定されていません」を選択します。
ビジュアル・エディタに追加したInvoke_1
アクティビティを編集して、TOUPPER
サービスが起動するようにします。 Invoke_1
アクティビティを編集するには、次のようにします。
Invoke_1
アクティビティをダブルクリックして編集します。 「Invoke」ダイアログ・ボックスが表示されます。
「Invoke」ダイアログ・ボックスで、「パートナ・ロールWebサービス・インタフェース」セクションに次の値が設定されていることを確認します。
パートナ・リンク: TOUPPER
操作: TOUPPER
「入力変数の自動作成」ボタンをクリックします。 このボタンは、「入力変数」フィールドの右の最初のボタンで、前のステップの図に示されています。 「変数の作成」ダイアログ・ボックスに入力変数が表示されます。
「入力変数」はInvoke_1_TOUPPER_InputVariable
にします。「OK」をクリックします。
「出力変数」フィールドの「入力変数の自動作成」ボタンをクリックします。
「出力変数」はInvoke_1_TOUPPER_OutputVariable
にします。「OK」をクリックします。
Assignアクティビティを使用して、リソース・アダプタに値を割り当てます。 Assign_1
アクティビティを編集するには、次のようにします。
Assign_1
アクティビティをダブルクリックして編集します。 「Assign」ダイアログ・ボックスが表示されます。
「作成」リストをクリックして、「コピー操作」を選択します。 「コピー操作の作成」ダイアログ・ボックスが表示されます。
「From」側で「変数」→「Read_1_ReadLowerStr_InputVariable」→「nsx:ToUpperData」の順に開いて、「Record1」を選択します。
「To」側で、「変数」→「Read_1_ReadLowerStr_InputVariable」→「input:ToUPPER」→「nsx:Record1」の順に開いて、「Record1_data」を選択します。
「OK」をクリックします。 「Assign」ウィンドウの「コピー操作」タブが更新されて、作成した規則が表示されます。
小文字の文字列を読み取るプロセスを作成した後、文字列を大文字で書き込む別のプロセスを作成します。 文字列を大文字で書き込むプロセスを作成する手順は、次のとおりです。
「文字列を読み取るためのファイル・アダプタの作成」の手順に従ってファイル・アダプタを作成します。 文字列を書き込むには、次の値を使用します。
サービス名: WriteStr
操作タイプ: Write File
操作名: WriteUpperStr
着信ファイル用のディレクトリ: C:\tempOut
ファイル・ネーミング・パターン: *.xml
AssignアクティビティとInvokeアクティビティをビジュアル・エディタに追加します。
Invoke_2アクティビティをダブルクリックして編集します。 Invokeアクティビティの編集方法の詳細は、「Invoke_1アクティビティの編集」を参照してください。 Invoke_2アクティビティには次の値を使用します。
パートナ・リンク: WriteStr
操作: WriteStr
入力変数: Invoke_2_WriteStr_InputVariable
出力変数: Invoke_1_TOUPPER_OutputVariable
Assign_2
アクティビティをダブルクリックして編集します。 Assignアクティビティの編集方法の詳細は、「Assign_1アクティビティの編集」を参照してください。 Assign_2アクティビティには次の値を使用します。
「From」側: 「変数」→「Invoke_1_TOUPPER_InputVariable」→「output:ToUPPER」→「nsx:TOUPPER_Response」の順に開いて、「Record1_data」を選択します。
「To」側: 「変数」→「Invoke_2_1_WriteStr_InputVariable」→「ToUpperData」→「nsx:ToUpperData」の順に開いて、「Record1」を選択します。
次の図は、最後のプロセスの概要を示しています。
このセクションでは、プロジェクトをテストして、アウトバウンド・プロセスが正しく実行されることを確認するための方法について説明します。 アウトバウンド・プロセスをテストするには、次の作業をします。
次の例に示すように、ファイルを作成してToUpperIn.xml
という名前にします。
<?xml version="1.0" encoding="UTF-8"?><CU:ToUpperData xmlns:CU="http://xmlns.oracle.com/Esb/ToUpperData" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Record1>tuxedo</Record1></CU:ToUpperData>
最初のファイル・アダプタ用に定義したC:\temp
フォルダにファイルを保存します。 SOAサーバーがファイルを読み取って処理を完了すると、ファイルは削除されます。
2番目のファイル・アダプタで定義したC:\tempOut
フォルダを開きます。 次の内容のファイルがこのフォルダにコピーされます。
<?xml version="1.0"?> <ToUpperData xmlns="http://xmlns.oracle.com/Esb/ToUpperData"> <Record1 xmlns>="">TUXEDO</Record1>