ヘッダーをスキップ
Oracle BPEL Process Manager Order Bookingチュートリアル
10g (10.1.3.1.0)
B31877-01
  目次
目次
索引
索引

戻る
戻る
次へ
次へ
 

6 フォルト処理および例外管理の作成

この章では、フォルト処理および例外を捕捉する例外管理機能の作成方法について説明します。

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

6.1 概要

チュートリアルのこのフェーズでは、第5章「条件分岐ロジックの追加」で設計したOrderBookingプロセスに処理を追加します。このフェーズを実行する前に、前のフェーズが正常に完了したことを確認してください。チュートリアルのこのフェーズでは、問題のある信用履歴を識別するフォルト処理および例外管理機能を作成します。次の主要タスクを実行します。

6.2 フォルト処理および例外管理の作成

この項では次のタスクを実行します。

6.2.1 ScopeアクティビティでのCatch Allブランチの作成

  1. 「+」記号をクリックして、「GetCreditRating」Scopeアクティビティを開きます。

  2. GetCreditRatingの左側にあるアイコンから「CatchAllブランチの追加」(上から4番目)をクリックします。

    obph5catchall.gifの説明
    図obph5catchall.gifの説明

  3. 「+」記号をクリックして、新しいブランチを開きます。

    「アクティビティをここにドロップ」と書かれた新しいボックスが右側に表示されます。

  4. 「コンポーネント・パレット」セクションから「Process Activities」を選択します。

  5. 「コンポーネント・パレット」セクションから作成したcatchブランチにAssignアクティビティをドラッグ・アンド・ドロップします。

  6. assignアイコンをダブルクリックして、割当てウィンドウを表示します。

  7. 「一般」タブをクリックします。

  8. 「名前」フィールドにassignZeroCRと入力します。

  9. 「適用」をクリックします。

  10. 「コピー操作」タブをクリックします。

  11. 「作成」をクリックし「コピー操作」を選択して、コピー操作の作成ウィンドウを表示します。2つのフォルト処理ルールを作成します。

  12. 次の値を入力します。

    フィールド
    送信元
    • タイプ
    '0'
    宛先
    • タイプ
    変数
    • 変数
    「変数」「invokeCR_process_OutputVariable」「ペイロード」「ns1:rating」の順に開いて選択します。

    注意: このネームスペースの数値(ns1ns2など)は変わる場合があります。自動的に表示されるネームスペース値を使用してください。


  13. 「OK」をクリックします。

  14. 「コピー操作」タブをクリックします。

  15. 「作成」をクリックし「コピー操作」を選択して、コピー操作の作成ウィンドウを表示します。

  16. 次の詳細を入力して、2番目の文を作成します。

    フィールド
    送信元
    • タイプ
    ('Bad Credit, Rating = 0')
    宛先
    • タイプ
    変数
    • 変数
    「変数」「inputVariable」「ペイロード」「ns1:PurchaseOrder」「ns1:OrderInfo」「ns1:OrderComments」の順に開いて選択します。

  17. 「OK」をクリックして、コピー操作の作成ウィンドウおよび割当てウィンドウを閉じます。

    完了後、Designerのウィンドウには次のように表示されます。

    obph5.gifの説明
    図obph5.gifの説明

  18. -記号をクリックしてScopeアクティビティを閉じます。

  19. 「ファイル」メイン・メニューから「保存」を選択します。

6.2.2 Order Bookingプロセスの検証、コンパイルおよびデプロイ

  1. 「アプリケーション・ナビゲータ」セクションに移動します。

  2. 「OrderBooking」を右クリックします。

  3. 「デプロイ」my_integration_server_connection「defaultドメインにデプロイ」の順に選択します。

  4. プロンプトが表示されたら、プロジェクトのバージョン番号を増分(たとえば、1.4と入力)し、「OK」をクリックします。

    これでBPELプロセスがコンパイルされます。 ウィンドウ下部のボタンをクリックしてエラーの有無を確認します。エラーが発生していなければ、デプロイは成功しています。 デプロイに失敗した場合は、手順4を参照してください。

6.2.3 Order Bookingプロセスの実行

フォルト処理および例外管理機能をテストする準備ができました。

  1. 「スタート」「すべてのプログラム」「Oracle - Oracle_Home「Oracle BPEL Process Manager」「BPEL Control」の順に選択し、Oracle BPEL Controlにアクセスします(すでに開いている場合はページをリフレッシュします)。

  2. Oracle BPEL Controlにログインするために次の情報を入力して「ログイン」をクリックします。

    フィールド
    ユーザー名 oc4jadmin
    パスワード password

    passwordは、インストール時に入力した値です。

    Oracle BPEL Controlの「ダッシュボード」タブが表示されます。

  3. 次のいずれかの方法で、手順4で増分したOrderBookingインスタンス・バージョンを起動します。

    • 「デプロイ済のBPELプロセス」リストでOrderBookingをクリックします。 「HTMLフォーム」のCustIDフィールドに0から始まる9桁の整数値を入力し、「XMLメッセージの転送」をクリックします。このアクションにより、信用格付けサービスで例外が呼び出されます。

    • http://localhost:8888/CreateOrderBookingUIで、提供されているCreateOrderBookingUIアプリケーションを開いて入力値を指定し、プロセスを開始します。 CustIDフィールドのデフォルト値をゼロで上書きしてください。

    「BPELプロセス」タブに次のようなメッセージが表示されます。

    テスト・インスタンスが開始されました
    
    
  4. 手順11で説明したグラフィカル・ユーザー・インタフェースJSPページを使用して、SelectManufacturingの手動価格見積りタスクを完了します。

  5. Oracle BPEL Controlに戻ります。

  6. 画面上部の「インスタンス」タブをクリックします。

  7. OrderBookingインスタンスが作成されたことを確認します。インスタンスが「インスタンス」リストに表示されます。「最終更新日時」リストには、インスタンスが作成された時間が表示されます。

  8. OrderBookingインスタンスをクリックします。

  9. 「監査」リンクをクリックして、インスタンスの実行プロセスを調べます。

  10. プロセス・フローでステップが実行され、例外が捕捉および処理されたことを確認します。scopeブロック内で問題のある信用の例外が発生し、例外ブロックで例外が処理され、デフォルト値の0が割り当てられ、処理が続行されます。

    obph5fault.gifの説明
    図obph5fault.gifの説明

  11. 「フロー」リンクをクリックして、さらに詳細を調べます。

6.3 まとめ

ここでは、信用格付けサービスで例外を捕捉するフォルト処理および例外管理機能を作成しました。次の主要タスクを実行しました。