Oracle BPEL Process Manager
を使用した簡単なプロセスのオーケストレーション
この演習では、Oracle JDeveloper 10g
BPEL Designerを使用したUnited Loan、Star LoanおよびCredit Rating
Webサービスの起動について説明します。 ここではJDeveloperを使用して、MyLoanProcessと
いうBPELプロセスを作成します。
約40分
この演習の内容は次のとおりです。
このアイコンの上にカーソルを置くと、この演習のすべてのスクリー
ンショットが表示されます。 (注意:
この操作によりすべてのスクリーンショットが同時に読み込まれるため、使用しているインターネット接続の種類によっては応答が遅い場合があります。)
注意: 各手順に関連するスクリーンショッ
トのみを表示する場合は、それぞれの手順のアイコンの上にカーソルを置いてください。
この演習では、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サービスの名前が表示されます。

注意: 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プロジェクトを作成するには、次の手順を実行
します。
| 1. |
Oracle JDeveloper 10gのBPEL
Designerメニューで、「ファイル」→「新規」を選択します。

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

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

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

注意:「ファイル」→「保
存」を選択して、選択したファイルを保存することも、「ファイル」→「すべて保存」
を選択して、プロジェクト内のすべてのファイルの変更を保存することもできます。
|
| 5. |
新しいBPELプロジェクトを作成するには、「アプリケーション -
ナビゲータ」で「MyLoanProcessWS」を右クリックし、「新
規プロジェクト」を選択します。

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

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

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

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」で、「コンポーネント・パレット」リ
ストから「プロセス・アクティビティ」を選択します。

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

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

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

|
| 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つの変数を表示します。

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

|
| 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個のプロセス変数が定義されていること
を確認します(スクリーンショットに表示されています)。

|
トピック・リス
トに戻る
BPELプロセスの作成中は、
MyLoanProcess.bpelファイルおよびプロジェクトに対する変更を定期的に保存しておく必要があります。
新しいBPELアクティビティに対する手順が完了した後は、「ファイル」→「すべて保存」
を選択して、変更した内容を保存します。
ここでは、以下のサブトピックについて説明します。
トピック・リス
トに戻る
同
期CreditRatingService Webサービスの起動
CreditRatingService
Webサービスを同期的に起動する、ローン・フロー・プロセス・アクティビティを設計するには、次の手順を実行します。
| 1. |
JDeveloperの「ダイ
アグラム・ビュー」で、「コンポーネント・パレット」から、「receiveInput」
アクティビティと「callbackClient」アクティビティの間の領域まで、「Scope」
をドラッグします。

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

|
| 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」アクティビティをダブルクリックし、「一
般」ページで次のプロパティ値を設定します。
「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')の値に設定します。

|
| 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」プロパティで、次のフィールド値を設定します。
「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 BPELプロジェクトをBPEL
Process Manager Serverにデプロイするには、次の手順を実行します。
| 1. |
JDeveloperの「アプリケーション - ナビゲータ」
で、「MyLoanProcess」プロジェクト・ノード
を右クリックします。

「デプロイ」→「LocalBPELServer」
→「defaultドメインにデプロイ」を選択します。
パスワードを要求されたら、デフォルトのドメイン・パスワードのbpelを入力します。
注意:
JDeveloperはBPELプロセスを自動的にコンパイルします。 JDeveloperはコンパイルの際に、Java
Archive形式の一連のBPEL(JARファイル)を作成します。これは、BPEL Process Manager
Serverにデプロイされます。
|
| 2. |
「メッセージ - ログ」ウィンドウの「メッ
セージ」ページで、BPELプロセスのコンパイルとデプロイの進捗を確認します。

注意: デプロイされた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

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

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

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

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

注意: 「starLoanService
(onResult)」アクティビティは手動による処理の完了を待機しています。
ローンの承認方法については、次の実習で説明します。
|
トップに戻る
StarLoanの申込みを手動で承認するには、次の手順を実行します。
| 1. |
StarLoanの
申込みを手動で承認するには、新しいブラウザ・ウィンドウを開きます。 次のURLを入力して、StarLoanUI Webアプリケーションを開始します。
http://localhost:9700/StarLoanUI
「Assign APR Task」リンクをクリックします。

|
| 2. |
StarLoanUI
Webインタフェースの「Assign APR Task」ページで、「Approve」
をクリックします。
「APR」フィールドのデフォルト値の7.4は、UnitedLoan
Webサービスで提供する5.7よりも大きくなっています。 この場合には、BPELのプロセス・フローでUnitedLoanの申込みが選択されます。
|
| 3. |
「Assign APR Task has been completed」
ページが表示されます。

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

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

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

<providerName>要
素にUnited Loanの値が示されます。APR要
素の値は5.7で
す。
「アクティビティ監査証跡」ウィンドウを閉じます。
|
トップに戻る
この実習では、次のこと
を学びました。
トピック・リス
トに戻る
このアイコンの上にカーソルを置くと、
すべてのスクリーンショットが非表示になります。
|