Oracle BPEL Process Manager を使用した簡単なプロセスのオーケストレーション

この演習では、Oracle JDeveloper 10g BPEL Designerを使用したUnited Loan、Star LoanおよびCredit Rating Webサービスの起動について説明します。 ここではJDeveloperを使用して、MyLoanProcessと いうBPELプロセスを作成します。

約40分

トピック

この演習の内容は次のとおりです。

新しいBPELプロ ジェクトの作成

パートナ・リンクの作 成

新しいプロセス変数 の追加
Loan Flowプロセスの設計
Loan Flowプロセスのデプロイとテスト

このアイコンの上にカーソルを置くと、この演習のすべてのスクリー ンショットが表示されます。 (注意: この操作によりすべてのスクリーンショットが同時に読み込まれるため、使用しているインターネット接続の種類によっては応答が遅い場合があります。)

注意: 各手順に関連するスクリーンショッ トのみを表示する場合は、それぞれの手順のアイコンの上にカーソルを置いてください。

概要

この演習では、Oracle JDeveloper 10g BPEL Designerを使用してLoan Flow BPELプロセスを設計する方法について示します。 MyLoanProcessは、ローン・アプリケーションと同期をとってCreditRatingServiceを呼び出すことによって、クライアントからのクレジット・チェックを実行しま す。 (CreditRatingServiceから)クレジットのレーティングを返されるローン・アプリケーションは、次の2つのWebサービスによって、非 同期に処理されます。

UnitedLoan Webサービス
StarLoan Webサービス

トピック・リス トに戻る

クライアントから提供されたローン・アプリケーションのための文書は、ま ず最初に、CreditRatingServiceプロセスを同期的に起動した後に返されるクレジット・レーティング値を伴って修正されます。 修正されたローンの文書は、UnitedLoanおよびStarLoanの2つのWebサービスによって同時に処理されます。 それぞれのローンプロバイダのWebサービスは、クライアントによる受諾または処理に関するドキュメントであるローン提案を返します。

トピック・リス トに戻る

前提条件

この実習を始める前に、次のことを実行しておく必要があります。

1.

デフォルトのブラウザとしてInternet Explorer 6.0を設定します。

 

2.

D:\JDeveloper\JDevBPELと いうディレクトリにOracle JDeveloper BPEL DesignerおよびOracle BPEL PM Serverをインストールします。


3.

次のとおりOracle BPEL PM Serverを開始します。
スタート」→「プログラム」→「Oracle - OracleBPM」→「Oracle BPEL Process Manager 10.1.2」 →「Start BPEL PM Server


4.

次のとおりOracle JDeveloper 10g BPEL Designerを開始します。
スタート」→「プログラム」→「Oracle - <Oracle_Home>」→「Oracle BPEL Process Manager 10.1.2」→「BPEL Designer

BPEL Designerと 表記されたデスクトップ・アイコンをダブルクリックして、Oracle JDeveloper 10g BPEL Designerを開始することもできます。

JDeveloperのプロキシ設定に使用するマシン名を追 加します。 これによって、ローカル・マシンからWSDLファイルを読み込めるようになります。 「ツール」→「設定」→「Webブラウザとプロキシ」を選択し、「例外」フィールドにマシン名を入力します。

 

5.

Oracle BPEL PM ServerにCreditRatingService、StarLoanおよびUnitedLoanのWebサービスをデプロイします。 次のとおりコマンド・ウィンドウを起動します。
スタート」→「プログラム」→「Oracle - <Oracle_Home>」→「Oracle BPEL Process Manager 10.1.2」→「Developer Prompt

コマンド・ウィンドウに次のコマンドを入力します。

cd utils\CreditRatingService
obant
cd ..\AsyncLoanService
obant

 

6.

BPEL Consoleで、CreditRatingService、 StarLoan、およびUnitedLoanのWebサービスがデプロイされたことを確認します。 BPEL Consoleを開始するには、「スタート」→「プログラム」→「Oracle - <Oracle_Home>」 →「Oracle BPEL Process Manager 10.1.2」→「BPEL Console」を選択します。 パスワードを要求されたら、デフォルトのパスワードbpelを入力します。 BPEL Consoleで、「ダッシュボード」ページのデプロイ済のBPELプロセス列 にWebサービスの名前が表示されます。

Place the cursor over this icon to see the image

注意: IE 6.0がデフォルトのブラウザでない場合は、明示的にIE 6.0を立ち上げ、http://<hostname.domain>:9700/BPELConsoleのURLを入力して BPEL Consoleを起動します。

 

7.

LoanFlow.xsdリンクを右クリックして、C:\Hands_on_Labs\bpel_jdev\support_files、または選択した一 時ディレクトリのファイルに、リンクまたはターゲットをダウンロードおよび保存します。

トピック・リス トに戻る

新しい BPELプロジェクトの作成

新しいBPELプロジェクトを作成するには、次の手順を実行 します。

1.

Oracle JDeveloper 10gのBPEL Designerメニューで、「ファイル」→「新規」を選択します。

Place the cursor over this icon to see the image

 

2.

新規ギャラリ」ウィンドウで「General」 カテゴリをクリックし、「ワークスペース」項目を選択します。 「OK」をクリッ クします。

Place the cursor over this icon to see the image

 

 

3.

ワークスペース作成」ダイアログ・ボックスで、次のフィー ルドの値を適用します。

ワークスペース名: MyLoanProcessWS

ディ レクトリ名: 入力したワークスペース名と類似した値が自動的に確定されます。
新 規の空のプロジェクトを追加」チェック・ボックスの選択を解除します。

別のナビゲータで開く」チェック・ボックス は、選択を解除した状態のままにします。

OK」をクリックします。

Place the cursor over this icon to see the image

 

4.

JDeveloperの「アプリケーション - ナビゲータ」ペインのアプリケーションフォル ダに、新しいワークスペースMyLoanProcessWSが表示されます。 [Ctrl] + [S] を押して、新しいワークスペースを保存します。

注意:ファイル」→「保 存」を選択して、選択したファイルを保存することも、「ファイル」→「すべて保存」 を選択して、プロジェクト内のすべてのファイルの変更を保存することもできます。

 

5.

新しいBPELプロジェクトを作成するには、「アプリケーション - ナビゲータ」で「MyLoanProcessWS」を右クリックし、「新 規プロジェクト」を選択します。

Place the cursor over this icon to see the image

 

6.

新規ギャラリ」ウィンドウで、「General」 の「Projects」をクリックし、「BPELプロセス・プロジェクト」項目を 選択します。 「OK」をクリックします。

Place the cursor over this icon to see the image

 

7.

BPELプロセス・プロジェクト」ダイアログ・ボックス で、次の値を入力します。

BPELプロセス名: MyLoanProcess

ネー ムスペース: http://xmlns.oracle.com/MyLoanProcess。 これはBPELプロセス名を自動的にミラーリングしたものです。 この値は変更しないでください。
テ ンプレート:デフォルトで、非同期BPELプロセスが選択されています。 この値を承認します。

プロジェクト・コンテンツ」エリアで、「デ フォルトを使用」チェック・ボックスを選択します。

OK」をクリックします。

 

8.

Navigatorで、次の3つのファイルが作成されます。

bpel.xmlには、BPELプロジェクトのパー トナ・リンクのバインディングが含まれています。

MyLoanProcess.bpel には、BPELプロセスを記述したBPEL要素が含まれています。
MyLoanProcess.wsdl は、BPELプロセスのインタフェースをWebサービスとして記述しています。

JDeveloperは、「ダイアグラム・ビュー」ページでMyLoanProcess.bpelを自動的に開きます。 「ダイアグラム・ビュー」ページに最初のBPELプロセス・アクティビティが表示されます。 このページを使用して、BPELプロセスをグラフィカルに作成および編集できます。

ファイル」→「すべて保存」 を選択して、新しいプロジェクト・ファイルを保存します。

 

9.

LoanFlow.xsd XMLスキーマ文書をインポートします。 XMLスキーマ・ファイルは、loanApplicationおよびloanOffer型 を定義します。これらの型はそれぞれ、BPELプロセスの入力および応答文書の構造を定義するのに使用します。

XMLスキーマ文書をBPELプロジェクト・ディレクトリへインポートするには、「構 造」ペインで「プロジェクト・スキーマ」を選択します(アプリケーション - ナビゲータでは必ずMyLoanProcess.bpelを選択します)。「インポート」 をクリックします。

 

10.

スキーマのインポート」ダイアログ・ボックスで、「ファ イルシステムの参照」アイコンをクリックします。

開く」ダイアログ・ボックスで、C:\Hands_on_Labs\bpel_jdev\support_filesディ レクトリ(またはファイルをダウンロードした一時ディレクトリ)へナビゲートし、「LoanFlow.xsd」 を選択して、「開く」をクリックします。

 

11.

OK」をクリックして、「スキーマのインポート」 ダイアログ・ボックスを閉じます。

 

12.

「構造」ペインで、「プロジェクト・スキーマ」の下にLoanFlow.xsdファイルが表示さ れていることを確認します。

「アプリケーション - ナビゲータ」をクリックしても、このチェックを行うことができます。

ファイル」→「すべて保存」 を選択して、プロジェクトおよびワークスペースに対する変更を保存します。

 

13.

「構造」ペインで「+」記号をクリックし、「メッセージ・タイプ」ノードを開きま す。 「プロセスWSDL」→「MyLoanProcess.wsdl」を開いて、「MyLoanProcessRequestMessage」 を選択します。

編集」をクリックします。

 

14.

メッセージ・タイプの編集 - MyLoanProcessRequestMessage」ウィンドウで、「payload」を選 択します。 「編集」をクリックします。

 

15.

メッセージ・パートの編集 - payload」ウィンド ウで、「要素」を選択します。 「要素の参照アイコン をクリックします。

 

16.

タイプの選択」ウィンドウで「プロジェク トのスキーマ・ファイル」、「LoanFlow.xsd」を開いて、「loanApplication」 を選択します。 「OK」をクリックします。

 

17.

メッセージ・パートの編集 - payload」ウィンド ウで「OK」をクリックします。

 

18.

メッセージ・タイプの編集 - MyLoanProcessRequestMessage」ウィンドウで「OK」をクリックしま す。

 

19.

BPELプロセスに対する応答メッセージのタイプを設定するには、「構造」ペインで「MyLoanProcessResponseMessage」 を選択します。 「編集」をクリックします。

 

20.

応答メッセージに対する「メッセージ・タイプの編集 - MyLoanProcessResponseMessage」 ウィンドウで、「payload」を選択します。 「編集」をクリックします。

 

21.

メッセージ・パートの編集 - payload」ウィンド ウで、「要素」を選択します。 「要素の参照ア イコンをクリックします。

 

22.

タイプの選択」ウィンドウで、「プロジェ クトのスキーマ・ファイル」、「LoanFlow.xsd」を開いて「loanOffer」 を選択します。 「OK」をクリックします。

 

23.

OK」をクリックして「Edit Message Part - payload」ウィンドウを閉じます。 「メッセージ・タイプの編集 - MyLoanProcessResponseMessage」ウィンドウで「OK」をクリックし ます。

 

トピック・リス トに戻る

パートナ・リ ンクの作成

BPELプロセスで起動されるそれぞれのWebサービスに対 してパートナ・リンクを作成するには、次の手順を実行します。

1.

ダイアグラム・ビュー」に表示されている「MyLoanProcess.bpel」で、「コンポーネント・パレット」リ ストから「プロセス・アクティビティ」を選択します。

Place the cursor over this icon to see the image

 

2.

CreditRatingService Webサービスに対してパートナ・リンクを作成するには、「コンポーネント・パレット」から、BPELプロセス・アク ティビティの右側の「Partner Links 」リージョンへ「PartnerLink」 オブジェクトをドラッグします。

Place the cursor over this icon to see the image

 

3.

パートナ・リンクの作成」ウィンドウで「WSIL ブラウザアイコンをクリックし、「WSDLの選択」を開きます。

Place the cursor over this icon to see the image

 

4.

WSDLの選択」ウィンドウで、「LocalBPELServer」、 「processes」、および「default」ノードを開きます。 「CreditRatingService」 をクリックします。 「OK」をクリックします。

Place the cursor over this icon to see the image

 

5.

パートナ・リンクの作成」ウィンドウでは、「WSDL の選択」での選択によって、「WSDLファイル」および「パートナ・リンク・タイ プ」フィールドに内容が移入されます。 フィールドで次の値を入力するか、または選択します。

名前: creditRatingService

マイ・ロール: 指定しない

パートナ・ロール: CreditRatingServiceProvider

OK」をクリックします。

ダイアグラム・ビュー」のBPELプロセスの右側で、「Partner Links」リージョンに「creditRatingService」パー トナ・リンク・ボックスが表示されます。

 

6.

UnitedLoan Webサービスに対してパートナ・リンクを作成するには、「コンポーネント・パレット」からBPELプロセス・アク ティビティの右側の「Partner Links」リージョンへ、新しい「PartnerLink」 オブジェクトをドラッグします。

 

7.

Create Partner Link」ウィンドウで、 「WSIL Browserアイコンをクリックして「WSDLの選択」を開きます。 「WSDLの選択」 で、「LocalBPELServer」、「processes」 および「default」ノードを開いて、「UnitedLoan」を選択しま す。 「OK」をクリックします。

 

8.

UnitedLoan Webサービスに対する「パートナ・リンクの作成」ウィンドウでは、「WSDL の選択」での選択によって、「WSDLファイル」および「パートナ・リンク・タイプ」フィールドに内容が移入されます。 フィールドで次の値を入力するか、または選択します。

名前: unitedLoanService

マイ・ロール: LoanServiceRequester

パートナ・ロール: LoanServiceProvider

OK」をクリックします。

unitedLoanService」 パートナ・リンク・ボックスが、「Diagram View」のBPELプロセスの右側の「Partner Links」リージョンに追加されます。

 

9.

StarLoan Webサービスに対するパートナ・リンクを作成するには、「コンポーネント・パレット」から、右側の「Partner Links」リージョンへ「PartnerLink」オブジェクトをドラッグします。

 

10.

パートナ・リンクの作成」ウィンドウで、「WSIL ブラウザ」アイコンをクリックして「WSDLの選択」を開き ます。 「WSDLの選択」で、「LocalBPELServer」、 「processes」および「default」ノードを開きま す。 「StarLoan」を選択します。 「OK」をクリックします。

 

11.

StarLoan Webサービスに対する「パートナ・リンクの作成」ウィンドウでは、「WSDL の選択」での選択によって、「WSDL File」および「Partner Link Type」フィールドに内容が移入されます。 フィールドで次の値を入力するか、または選択します。

名前: starLoanService

My Role: LoanServiceRequester

Partner Role: LoanServiceProvider

OK」をクリックします。

starLoanService」 パートナ・リンク・ボックスが、「ダイアグラム・ビュー」のBPELプロセスの右側の「Partner Links」リージョンに追加されます。

ファイル」→「すべて保存l」 を選択して、プロジェクト・ファイルに対する変更を保存します。

 

トピック・リス トに戻る

新しいプロ セス変数の追加

MyLoanProcess BPELプロセスのアクティビティに対する変数を作成するには、次の手順を実行します。

1.

MyLoanProcess.bpel - 構造」ペインで、「変数」、「プ ロセス」および「変数」を開いて、inputVariableお よびoutputVariableとして定義されている2つの変数を表示します。

Place the cursor over this icon to see the image

 

2.

CreditRatingServiceに 対する入力変数を作成するには、「構造」ペインで、「プロセス」サブノードの下の 「変数」を選択します。 次に、「作成」をクリックします。

Place the cursor over this icon to see the image

 

3.

変数の作成」ウィンドウの「名前」 フィールドにcrInputと入力し、「メッセージ・タイプ」 を選択して「メッセージ・タイプの参照アイコンをクリックします。

 

4.

タイプの選択」ウィンドウで、「メッセー ジ・タイプ」、「Partner Links」、「creditRatingService」、 「CreditRatingService」および「メッセージ・タイプ」を開き ます。 「CreditRatingServiceRequestMessage」 を選択します。 「OK」をクリックします。

 

5.

変数の作成」ウィンドウで「OK」 をクリックします。

構造」ペインのBPELプロセス変数のリストに、crInput変数が表示されます。

 

6.

CreditRatingServiceに 対する出力変数を作成します。 「構造」ペインの「プロセス」サブノードの下で「変 数」を選択します。 「作成」をクリックします。

変数の作成」ウィンドウの「名前」 フィールドに、crOutputと入力します。 「メッセージ・タイプ」 については、「CreditRatingService」、「メッセージ・タイプ」 ノードで選択した値であるCreditRatingServiceResponseMessageを 選択します。 「OK」をクリックします。 「変数の作成」ウィンドウで「OK」 をクリックします。

 

7.

CreditRatingServiceに 対してエラー変数を作成し、「変数」を選択して、「作成」をクリックします。

変数の作成」ウィンドウの「名前」 フィールドで、crErrorと入力します。 「メッセージ・タイプ」 については、「CreditRatingService」、「メッセージ・タイプ」 ツリーで選択した値であるCreditRatingServiceFaultMessageを 選択します。 「OK」をクリックします。 「変数の作成」ウィンドウで「OK」 をクリックします。

ファイル」→「すべて保存」 を選択して、プロジェクト・ファイルに対する変更を保存します。

 

8.

UnitedLoan and StarLoan Web サービスに対してローン・アプリケーションの入力変数を作成し、「Variables」 を選択して「Create」をクリックします。

Create Variable」ウィンドウの「名 前」フィールドで、loanApplicationと入力します。 「Message Type」については、「unitedLoanService」、「Message Types」ツリーで選択した値であるLoanServiceRequestMessageを 選択します。 「OK」をクリックします。 「Create Variableウィ ンドウで「OK」をクリックします。

 

9.

UnitedLoan Webサービスに対してローン申込みの出力変数を作成し、「Variables」を選択して「Create」 をクリックします。

Create Variable」ウィンドウの「名 前」フィールドで、unitedOfferと入力します。 「Message Type」については、「unitedLoanService」、「Message Types」ツリーで選択した値であるLoanServiceResultMessageを 選択します。 「OK」をクリックします。 「Create Variableウィ ンドウで「OK」をクリックします。

 

10.

StarLoan Webサービスに対してローン申込みの出力変数を作成し、「変数」を選択して「作成」 をクリックします。

変数の作成」ウィンドウの「名前」 フィールドで、starOfferと入力します。 「メッセージ・タイプ」 については、「starLoanService」、「メッセージ・タイプ」ツリー で選択した値であるLoanServiceResultMessageを 選択します。 「OK」をクリックします。 「変数の作成」ウィンドウで「OK」 をクリックします。

ファイルe」→「すべて保存」 を選択して、プロジェクト・ファイルに対する変更を保存します。

 

11.

MyLoanProcess.bpelの 「構造」ペインで、「BPEL構造」→「変数」 →「プロセス」→「変数」ノードの下位に8個のプロセス変数が定義されていること を確認します(スクリーンショットに表示されています)。

 

トピック・リス トに戻る

Loan Flowプロセスの設計

BPELプロセスの作成中は、 MyLoanProcess.bpelファイルおよびプロジェクトに対する変更を定期的に保存しておく必要があります。 新しいBPELアクティビティに対する手順が完了した後は、「ファイル」→「すべて保存」 を選択して、変更した内容を保存します。

ここでは、以下のサブトピックについて説明します。

同 期CreditRatingService Webサービスの起動
CreditRatingService の障害処理の追加
非 同期のUnitedLoanおよびStarLoan Webサービスの同時起動

ローン申込みを選択するた めの条件付きブランチの追加

トピック・リス トに戻る

同 期CreditRatingService Webサービスの起動

CreditRatingService Webサービスを同期的に起動する、ローン・フロー・プロセス・アクティビティを設計するには、次の手順を実行します。

1.

JDeveloperの「ダイ アグラム・ビュー」で、「コンポーネント・パレット」から、「receiveInput」 アクティビティと「callbackClient」アクティビティの間の領域まで、「Scope」 をドラッグします。

Place the cursor over this icon to see the image

 

2.

新しい「Scope」に名前を付けるには、「ダ イアグラム・ビュー」で「Scope_1」をダブルクリックします。 「Scope」 ダイアログ・ボックスの「一般」ページで、「名前」フィールドにGetCreditRatingと入力します。 「OK」をクリック します。

Place the cursor over this icon to see the image

 

3.

GetCreditRating」 スコープのをクリックして展開します。

 

4.

ダイアグラム・ビュー」で、「コンポーネ ント・パレット」から、「GetCreditRating」 スコープの「アクティビティをここにドロップ」リージョンまで、「Assign」 アクティビティをドラッグします。

 

5.

 

次に、inputVariableか らSSNの値を取得して、crInput変数に入 れてCreditRatingServiceへ渡すための、コピー・ルールを作成します。 このようにする には、「Assign_1」アクティビティをダブルクリックして、「Assign」 プロパティを表示します。 「コピー・ルール」ページの「作成」を クリックします。

 

6.

コ ピー・ルールの作成」ウィンドウで、「送信元」と「宛先」の両方のセクションの「タイプ」として「Variable」を選択しま す。 (これはデフォルトです)。

送信 元」セクションで、「プロセス」、「変数」、 「inputVariable」、「payload」、「ns1:loanApplication」を開い て、「ns1:SSN」を選択します。

宛先」セクションで、「プ ロセス」、「変数」、「crInput」、「payload」を開いて「ns2:ssn」 を選択します。

対応する「XPath」フィールド で、選択した変数のXPath Queryを確認します。 「OK」をクリックして、コピー・ルールの設定を保存します。

 

7.

Assign」プロパティ・セクションで新しいコピー・ ルールの詳細をチェックします。 「OK」をクリックします。 入力した詳細が正しい場合は、「無効な設定」 というエラー・メッセージが消去されます。

 

8.

Assign_1」 アクティビティの後に、「コ ンポーネント・パレット」から、「GetCreditRating」 スコープへ「Invoke」アクティビティをドラッグします。

 

9.

Invoke」アクティビティを有効にしてCreditRatingServiceを開始できるようにするには、「Invoke_1」アクティビティをダブルクリックし、「一 般」ページで次のプロパティ値を設定します。

名前: invokeCR

パートナ・リンク: creditRatingService

入力変数: crInput (「変数の参照」アイコンをクリックして「crInput」を選 択します)。
出力変数: crOutput(「変数の参照」アイコンをクリックして「crOutput」を 選択します。)

OK」をクリックします。

 

10.

もうひとつの「Assign」アクティビティを、「invokeCR」 アクティビティの後に「コンポーネント・パレット」から、「GetCreditRating」 スコープへドラッグします。

 

11.

Assign_2」アクティビティをダブルクリックしま す。 コピー・ルールを追加するには、「Create」をクリックします。

 

12.

コ ピー・ルールの作成」ウィンドウで「From」と「To」の両方のセクションの「Type」として「Variable」を選択しま す(これはデフォルトです)。

送信 元」セクションで、「プロセス」、「変数」、「crOutput」、「payload」 を開いて、「ns2:rating」を選択します。

宛先」 セクションで、「プロセス」、「変数」、「loanApplication」、「payload」、 「ns1:loanApplication」を開いて、「ns1:creditRating」を選択します。

対応する「XPath」フィールド で、選択した変数のXPath Queryを確認します。 「OK」をクリックして、コピー・ルールの設定を保存します。

 

13.

Assign」プロパティ・セクションで新しいコピー・ ルールの詳細をチェックします。 「OK」をクリックします。 入力した詳細が正しい場合は、「無効な設定」 というエラー・メッセージが消去されます。

ファイル」→「すべて保存」 を選択して、BPELプロジェクトに対する変更を保存します。

 

トップに戻る

CreditRatingService の障害処理の追加

CreditRatingService Webサービスによって返され、BPELプロセスを終了させる障害の処理に対してプロセス・アクティビティを追加するには、次の手順を実行します。

1.

CreditRatingServiceが、 先頭がゼロで始まるSSN値で呼び出されたときに生成された、NegativeCredit障害に対して、障害ハンドラを追加することができます。 このようにするには、最初に、「GetCreditRating」スコープの「Catch ブランチの追加アイコンをクリックします。

 

2.

追加された「Catch」ブランチのアイコ ンをダブルクリックします。

 

3.

Catch」ページで「Browse Faultsアイコンをクリックし、障害変数を選択します。

注意:Fault名NegativeCreditとします。これは、CreditRatingService WebサービのWSDLで定義されているためです。 ネームスペースの接頭辞であるns2は、 BPELプロセス内で、crError変数を修飾するために使用しているネームスペースの接頭 辞と一致する必要があります。

 

4.

フォルトの選択」ダイアログ・ボックスで、「Partner Links」、 「creditRatingService」、「CreditRatingService」を開いて、「Fault - NegativeCredit」を選択します。 「OK」をクリックします。

 

5.

フォルト変数」で、「フォルト変数の参照ア イコンをクリックして「crError」を選択します。 「OK」をクリックします。

 

6.

障害を処理するには、「Assign」を、「ns2:NegativeCreditCatch」 ブランチの「アクティビティをここにドロップ」というリージョンまでドラッグします。

 

7.

outputVariableで、 ローン申込みが承認されないことを示すためのコピー・ルールを追加するには、「Assign_3」をクリックします。 「作成」をクリックします。

 

8.

コピー・ルールの作成」ウィンドウの「送 信元」セクションで、次のアクション・シーケンスを使用して、「」フィールドを
string('None - rejected because of bad credit')の値に設定します。

タイプ」ドロップダウン・リストから「」 オプションを選択し、「」フィールドをクリックします。.

[Ctrl] + [Space] キーを押して、XPathビルディング・アシスタントを起動 します。

表示される XPathの機能一覧を制限するには、stと入力し、string(any input) as Stringと入力します。
string()関 数の括弧内に、「None - rejected because of bad credit」 というテキストを入力します。

 

9.

宛先」セクションで、「プロセス」、「変 数」、「outputVariable」、「payload」、「ns1:loanOffer」を開 いて、「ns1:providerName」を選択します。 「OK」をクリックします。

 

10.

Assign」プロパティ・セクションで、「作 成」をクリックして2番目のコピー・ルールを追加します。

 

11.

コピー・ルールの作成」ウィンドウの「送 信元」セクションで、XPathビルディング・アシスタントを使用して、「」 フィールドの値を関数false()に設定します。

 

12.

宛先」セクションで、「プロセス」、「変 数」、「outputVariable」、「payload」、「ns1:loanOffer」を開 いて、「ns1:providerName」を選択します。 「OK」をクリックします。

 

13.

Assign」プロパティ・セクションで、「作 成」をクリックして3番目のコピー・ルールを追加します。

 

14.

コピー・ルールの作成」ウィンドウの「送 信元」セクションで、XPathビルディング・アシスタントを使用して、「」 フィールドの値を関数false()に設定します。

 

15.

To」セクションで、「Process」、 「Variables」、「outputVariable」、「payload」、「ns1:loanOffer」 を開いて、「ns1:approved」を選択します。 「OK」をクリックします。

 

16.

Assign」プロパティ・セクションで、「」 をクリックして4番目の最後のコピー・ルールを追加します。

 

17.

コピー・ルールの作成」ウィンドウの「送 信元」セクションで、XPathビルディング・アシスタントを使用して、「」 フィールドの値を関数number (100)に設定します。

 

18.

宛先」セクションで、「プロセス」、「変 数」、「outputVariable」、「payload」、「ns1:loanOffer」を開 いて、「ns1:APR」を選択します。 「OK」をクリックします。

 

19.

Assign」プロパティに、4つのコピー・ルールがある ことを確認します。 「OK」をクリックします。

 

20.

クライアントへコールバックするには、「コンポーネント・パレット」 から、「ns2:NegativeCredit Catch」 ブランチのAssign_3の後に、「Invoke」アクティビティをドラッグし ます。

 

21.

Invoke_1」アクティビティをダブルクリックしま す。 「Invoke」プロパティで、次のフィールド値を設定します。

名前: badCreditClientCallback

パートナ・リンク: client

入力変数: outputVariable
出力変数は空にします。

OK」をクリックします。

 

22.

NegativeCreditで障害 が発生したためにBPELプロセスを終了するには、「ns2:NegativeCredit Catch」ブランチの「badCreditClientCallback invoke」アクティビティの後に、「コンポー ネント・パレット」から「Terminate」アクティビティをドラッグします。

注意:使用している領域を最少化するには、「GetCreditRating」スコープの左上の省略記号のアイコ ンをクリックします。

ファイル」→「すべて保存」 を選択して、BPELプロジェクトに対する変更を保存します。

 

トップに戻る

非同期の UnitedLoanおよびStarLoan Webサービスの同時起動

UnitedLoanおよび StarLoan Webサービスを同時に非同期に呼び出すプロセス・アクティビティを設計するには,次の手順を実行します。

1.

パラレル・フローのためのスコープを作成するには、最初の「GetCreditRating」 スコープの後に、「コンポーネント・パレット」 から「Scope」コンポーネントをドラッグします。

 

2.

新しいスコープを名前を変更するには、「Scope_1」を ダブルクリックします。 「名前」フィールドにGetLoanOffersと 入力します。 「OK」をクリックします。

 

3.

GetLoanOffers」スコープを開きます。 loanApplication変数を初期化するには、GetLoanOffersス コープの「アクティビティをここにドロップ」リージョンまで、「Assign」ア クティビティをドラッグします。

 

4.

assignアクティビティのプロパティを設定するには、「Assign_4」 アクティビティをダブルクリックします。 「一般」タブをクリックします。 「名前」 フィールドの内容を、「InitializeInput」に変更します。 「コ ピー・ルール」タブをクリックします。

作成」をクリックします。

 

5.

コ ピー・ルールの作成」ウィンドウで、「送信元」と「宛先」の両方のセクションの「タイプ」として「変数」を選択します。 (これはデフォルトです)。

送信 元」セクションで、「プロセス」、「変数」、「inputVariables」を開いて、「payload」 を選択します。

宛先」 セクションで、「プロセス」、「変数」、「loanApplication」を開いて、「payload」 を選択します。OK」をクリックします。

OK」をクリックします。

 

6.

パラレル・フローを作成するには、InitializeInput assign アクティビティの後にリージョンまで「Flow」コンポーネントをドラッグします。

フローは自動的に開いて、左右に2つのアクティビティが含まれています。

 

7.

フローの左側で、「Invoke」コンポーネントを「ア クティビティをここにドロップ」リージョンまでドラッグします。

 

8.

Invoke_1」をダブルクリックして、「Invoke」 の次のプロパティを設定します。

名前: invokeUnitedLoan

パートナ・リンク: unitedLoanService

入力変数: loanApplication

注意:非同期のWebサービスを呼び出している間は、「出力変数」 プロパティは設定できません。

OK」をクリックします。

 

9.

フローの左側で、「Receive」コンポーネントを「invokeUnitedLoan」 アクティビティの後にドラッグします。

 

10.

Receive_1」をダブルクリックして、「Receive」 の次のプロパティを設定します。

名前: receive_invokeUnitedLoan

パートナ・リンク: unitedLoanService

変数: unitedOffer

注意:インスタンスの作成」 チェック・ボックスは選択しないでください。

OK」をクリックします。

 

11.

フローの右側で、「Invoke」コンポーネントを「ア クティビティをここにドロップ」リージョンまでドラッグします。

 

12.

Invoke_1」をダブルクリックして、「Invoke」 の次のプロパティを設定します。

名前: invokeStarLoan

パートナ・リンク: starLoanService

入力変数: loanApplication

OK」をクリックします。

 

13.

フローの右側で、「Receive」コンポーネントを「invokeStarLoan」 アクティビティの後にドラッグします。

 

14.

Receive_1」をダブルクリックして、「Receive」 の次のプロパティを設定します。

名前: receive_invokeStarLoan

パートナ・リンク: starLoanService

変数: starOffer

注意: インスタンスの作成」 チェック・ボックスは選択しないでください。

OK」をクリックします。

GetLoanOffers」スコープを閉じます。

ファイル」→「すべて保存」 を選択して、BPELプロジェクトに対する変更を保存します。

 

トップに戻る

ローン申込みを選択するための条件付きブランチの追加

BPELアクティビティの 条件付きブランチを作成して、UnitedLoanまたはStarLoanWebサービスから 最適なローン申込みを選択するには、次の手順を実行します。

1.

Scope」コンポーネントを、「GetLoanOffers」 スコープの後にドラッグします。

 

2.

スコープ名を設定するには、「Scope_1」をダブルク リックし、「名前」プロパティにChooseLoanOfferと 入力します。 「OK」をクリックします。

 

3.

条件付きブランチを作成するには、「ChooseLoanOffer」 スコープを開いて、「Switch」アクティビティを「アクティビティをここにドロップ」 リージョンまでドラッグします。

switchアクティビティは条件付きブランチを実装します。最初はこのブランチには、左側に<case>ブ ランチ、右側に<otherwise>ブランチが含まれています。

 

4.

条件を作成するには、<case>ブランチをダ ブルクリックします。

 

5.

Switch Case」 プロパティで、「XPathビルディング・アシスタント」を使用して、「」 フィールドの次の条件を作成します。

bpws:getVariableData('unitedOffer', 'payload', '/ns1:loanOffer/ns1:APR') > 
bpws:getVariableData('starOffer', 'payload', '/ns1:loanOffer/ns1:APR')

」フィールドをクリックします。 [Ctrl] + [Space] キーを押して、XPath ビルディング・アシスタントを起動します。 XPathビルディング・アシスタントのリストか ら、3つのString引数を使用して、「bpws:getVariableData」 エントリをダブルクリックします。 前述の式に示すように引数を設定します。 最初の式が完了したら、'>'の記号を入力し、2番目の式を設定します。 「OK」をクリックします。

注意: XPathビルディング・アシスタントには、各引数の選択の値が用意されています。

 

6.

<case>の条件式がTRUEの場合は、この ブランチが処理されます。 つまり、この場合はUnitedLoanのローン申込みよりも適し ている(より小さい)StarLoanを選択します。 「starOffer」を選択するには、<case>ブラ ンチの「アクティビティをここにドロップ」リージョンまで「Assign」コン ポーネントをドラッグします。

 

7.

Assign_4」をダブルクリックします。 「starOffer」を「outputVariable」 にコピーするには、「Assign」プロパティで「一般」タブをクリックします。 「名前」プロパティにselectStarOfferと入 力します。 「コピー・ルール」タブをクリックします。

Create」をクリックして、「コ ピー・ルールの作成」ウィンドウを開きます。 「送信元」と「宛先」の両方のセクションで、「Type」 として「Variable」を選択します。.

送信元」セクションで「変数」、「starOffer」 を開いて、「payload」を選択します。

宛先」セクションで「変数」、「outputVariable」 を開いて、「payload」を選択します。 「OK」をクリックします。

OK」をクリックして、「Assign」 ダイアログ・ボックスを閉じます。

 

8.

<otherwise>ブランチで「unitedOffer」を選択するには、もうひとつの「Assign」 コンポーネントを「アクティビティをここにドロップ」リージョンへドラッグします。

Assign_4」をダブルクリックします。

 

9.

Assign」プロパティの「一般」 タブをクリックします。 「名前」プロパティにselectUnitedOfferと 入力します。 「コピー・ルール」タブをクリックします。

Create」をクリックして、「コ ピー・ルールの作成」ウィンドウを開きます。 「From」と「To」の両方のセクションで、 「Type」として「Variable」を選択します。.

From」セクションで「Variables」、 「unitedOffer」を開いて、「payload」を選択します。

To」セクションで「Variables」、 「outputVariable」を開いて、「payload」を選択します。 「OK」をクリックします。

OK」をクリックして、「Assign」 ダイアログ・ボックスを閉じます。

 

10.

ChooseLoanOffer」スコープのswitch アクティビティで、<case>ブランチに「selectStarLoan」 アクティビティが、<otherwise>ブランチに「selectUnitedLoan」 アクティビティが含まれていることを確認します。

ファイル」→「すべて保存」 を選択して、BPELプロジェクトに対する変更を保存します。

 

トップに戻る

ここでは、以下のサブトピックについて説明します。

MyLoanProcess BPELプロセスのデプロイ
テ スト: ローン申込みを取得するためにMyLoanProcessが正常に実行されているか

トピック・リス トに戻る

MyLoanProcess BPELプロセスのデプロイ

MyLoanProcess BPELプロジェクトをBPEL Process Manager Serverにデプロイするには、次の手順を実行します。

1.

JDeveloperの「アプリケーション - ナビゲータ」 で、「MyLoanProcess」プロジェクト・ノード を右クリックします。

Place the cursor over this icon to see the image

デプロイ」→「LocalBPELServer」 →「defaultドメインにデプロイ」を選択します。 パスワードを要求されたら、デフォルトのドメイン・パスワードのbpelを入力します。

注意: JDeveloperはBPELプロセスを自動的にコンパイルします。 JDeveloperはコンパイルの際に、Java Archive形式の一連のBPEL(JARファイル)を作成します。これは、BPEL Process Manager Serverにデプロイされます。

 

2.

メッセージ - ログ」ウィンドウの「メッ セージ」ページで、BPELプロセスのコンパイルとデプロイの進捗を確認します。

Place the cursor over this icon to see the image

注意: デプロイされたBPELプロセスをテストする前 に、コンパイルとデプロイを正常に終了させてください。 「メッセージ」ページでメッセージ行を折り返すには、「メッ セージ」ページ領域の任意の場所を右クリックし、コンテキスト・メニューで「折返し」を選択しま す。

 

トップに戻る

テスト: ローン申込みを取得するためにMyLoanProcessが正常に実行されているか

MyLoanProcess BPELプロセスが正常にローン申込みを取得しているかをテストするには、次の手順を実行します。

1.

デプロイされたBPELプロセスを表示するには、ブラウザ・ウィンドウを開き、次のURLを入力 して「BPEL Console」ページを表示します。 「スタート」→「プ ログラム」→「Oracle - <Oracle_Home>」 →「Oracle BPEL Process Manager 10.1.2」→「BPEL Console」を選択して、BPEL Consoleを開始することもできます。

http://localhost:9700/BPELConsole

Place the cursor over this icon to see the image

ダッシュボード」ページの「デプロイ済の BPELプロセス」列に、「MyLoanProcess」 リンクが表示されます。

 

2.

ダッシュボード」ページで「MyLoanProcess」 リンクをクリックします。

Place the cursor over this icon to see the image

 

3.

BPELプロセス」ページの「開始」 タブで、スクリーンショットに示すように、「loanApplication」のHTML形式のフィールドにdetailsと入力します。 「XMLメッセージの送信」をクリッ クしてBPELプロセスを開始します。

Place the cursor over this icon to see the image

 

4.

BPEL Processes」ページの更新された「Initiate」 タブで、「Visual Flow」リンクをクリックします。

Place the cursor over this icon to see the image

 

5.

インスタンス」ページの「フロー」 タブで、ページの最後までスクロール・ダウンします。

注意:starLoanService (onResult)」アクティビティは手動による処理の完了を待機しています。 ローンの承認方法については、次の実習で説明します。

 

トップに戻る

 

StarLoanの申込みを手動で承認するには、次の手順を実行します。

1.

StarLoanの 申込みを手動で承認するには、新しいブラウザ・ウィンドウを開きます。 次のURLを入力して、StarLoanUI Webアプリケーションを開始します。

http://localhost:9700/StarLoanUI

Assign APR Task」リンクをクリックします。

Place the cursor over this icon to see the image

 

2.

StarLoanUI Webインタフェースの「Assign APR Task」ページで、「Approve」 をクリックします。

Place the cursor over this icon to see the image

APR」フィールドのデフォルト値の7.4は、UnitedLoan Webサービスで提供する5.7よりも大きくなっています。 この場合には、BPELのプロセス・フローでUnitedLoanの申込みが選択されます。

 

3.

Assign APR Task has been completed」 ページが表示されます。

Place the cursor over this icon to see the image

ブラウザ・ウィンドウを閉じます。

 

4.

BPEL Console Webインタフェースが含まれているブラウザ・ウィンドウで、任意の空白の場所を右クリックします。 コンテキスト・メニューで「最新の 情報に更新」を選択し、「インスタンス」ページのビジュアルなフローをリフレッシュします。

Place the cursor over this icon to see the image

 

5.

フロー」タブの最後までスクロールして、「ChooseLoanOffer」 スコープに「selectUnitedOffer」assignアクティビティが含まれていることを確認します。 「callbackClient」 リンクまたはアイコンをクリックし、クライアントに返されるローン申込みの資料を表示します。

Place the cursor over this icon to see the image

 

6.

アクティビティ監査証跡」ダイアログ・ボックスに、「callbackClient outputVariable」 コンテンツが表示されます。

Place the cursor over this icon to see the image

<providerName>要 素にUnited Loanの値が示されます。APR要 素の値は5.7で す。

アクティビティ監査証跡」ウィンドウを閉じます。

 

トップに戻る

この実習では、次のこと を学びました。

Oracle JDeveloper 10g BPEL Designerを使用した新しいBPELプロジェクトの作成

BPELプロセスで呼び出された各Webサービスに対するパートナ・リンクの追加

WebサービスとBPELプロセス間の要求および応答でXMLデータを渡すための変数の追加

Oracle JDeveloper 10g BPEL Designerを使用したBPELプロセスのビジュアルな設計
Oracle JDeveloper 10g BPEL Designerを使用したBPELプロセスのコンパイルおよびデプロイ
BPEL ConsoleでのBPELプロセスのテスト

トピック・リス トに戻る

このアイコンの上にカーソルを置くと、 すべてのスクリーンショットが非表示になります。