|
AquaLogic Service Bus を使用して、エンタープライズ環境でビジネス サービス間の適応性のあるメッセージ ルーティングを行うことができます。AquaLogic Service Bus を介してクライアントからのメッセージを適切なビジネス サービスにルーティングできます。AquaLogic Service Bus は、メッセージ処理ロジックでコンフィグレーションされたアクションに基づいて 1 つまたは複数の送り先にメッセージをルーティングします。これらのルーティング アクションは、AquaLogic Service Bus Console を使用してコンフィグレーションします。ルーティングは、システム間で多数の静的なポイントツーポイントの Web サービス接続を確立する効率的な方法です。
このチュートリアルを開始する前に、次のチュートリアルを完了している必要があります。
このチュートリアルの目的は、AquaLogic Service Bus Console のグラフィカル環境を使用してルーティング シナリオを作成およびテストすることです。以下のタスクがあります。
このチュートリアルを通じて、BEA AquaLogic Service Bus の次の機能について学習できます。
主要な金融会社が、AquaLogic Service Bus を使用して、要求された金利に基づいて融資申し込みを適切なビジネス サービスにルーティングします。5% 未満の金利を要求する申し込みは、管理者の承認が必要であり、その処理を行う適切なビジネス サービスにルーティングされます。それ以外の融資申し込みはすべて、別のビジネス サービスにルーティングされて処理されます。対象のビジネス サービスは、その融資申し込みを承認するか拒否するかを示す応答を返します。
次の図は、このシナリオをサポートする論理アーキテクチャの概要を示しています。AquaLogic Service Bus が企業においてクライアントとビジネス サービスの間のメッセージングを仲介する方法を示します。

融資申し込みをクライアントからプロキシ サービス LoanGateway1 に送信します。デフォルト プロキシ サービスには、融資申し込みドキュメントの要求金利の値をチェックする条件付きルーティング ステージがあります。金利が 5% 未満の場合、融資要求は ManagerLoanReview ビジネス サービスにルーティングされ、5% 以上の場合は NormalLoan ビジネス サービスにルーティングされます。対象ビジネス サービスから次のメッセージのような応答が返されます。
Loan Application Response: APPROVED BY THE <i><b>MANAGER</b></i> LOAN APPLICATION REVIEW SERVICE.
| 注意 : | 融資要求が NormalLoan ビジネス サービスによって処理される場合、生成される応答の MANAGER は NORMAL に置き換えられます。 |
次の表は、このチュートリアルの開発および実行に必要なリソースです。
このチュートリアルでは、AquaLogic Service Bus を使用し、金融会社の融資申し込みを、要求された金利に応じて対象 Web サービスにルーティングします。以下の手順を実行することによって、プロキシ サービスと関連するリソースを AquaLogic Service Bus で設計およびコンフィグレーションし、この使用例のシナリオを実装できます。
このチュートリアル用に作成したドメインで AquaLogic Service Bus が動作していること、および「チュートリアルのセットアップ」の説明どおりに手順が完了していることを確認します。
AquaLogic Service Bus Console を使用して、AquaLogic Service Bus 環境でリソースおよびコンフィグレーションをモニタできます。システムのモニタは、セッションを開始しなくても実行できます。ただし、リソースを更新または削除してコンフィグレーション プロパティを変更するには、まず AquaLogic Service Bus Console でアクティブなセッションを作成する必要があります。
コンソールの [Change Center] からセッションの作成と管理を行えます。現在のセッション中のシステム コンフィグレーションに対するすべての更新は、一時ファイルとして保存されます。これらの変更は、現在のセッションがアクティブ化されたときにのみ有効になります。次の図は、AquaLogic Service Bus Console で利用できる [Change Center] ペインです。
![[Change Center] を使用したセッションの管理](wwimages/Tut1_ChangeCenterOptions.gif)
セッションの作成とアクティブ化に加えて、[Change Center] では次の表に示す追加機能も実行できます。
| 注意 : | [作成] をクリックしてから、コンソールでシステム コンフィグレーション設定を変更することをお勧めします。コンフィグレーションの変更はこまめに保存してください。現在のセッションのコンフィグレーション変更を保存してアクティブ化するには、一連の変更を完了してから [アクティブ化] をクリックする必要があります。 |
AquaLogic Service Bus システム環境では、システム コンフィグレーション エンティティはユーザ定義のプロジェクトにグループ化されます。AquaLogic Service Bus Console の [プロジェクト エクスプローラ] ページには、[Projects] フォルダの下にデフォルトのプロジェクトおよびさまざまなユーザ定義のプロジェクトが表示されます。このページから、すべてのプロジェクトのコンフィグレーション タスクを実行できます。各プロジェクトは、コンソール上でプロジェクト フォルダ別に表されます。新しいプロジェクト フォルダを追加し、プロジェクト ツリーを移動できます。必要に応じてフォルダをクリックすることで、フォルダを折りたたんだり展開することができます。
AquaLogic Service Bus システム環境には、事前定義された 3 つのリソース タイプがあります。各リソース タイプは、プロジェクト フォルダ内のサブフォルダとして表されます。リソース タイプのフォルダ内に別のリソース タイプを作成し、コンフィグレーションできます。
この節では、セッションを開始し、[Projects] フォルダの下に MortgageBroker プロジェクトを作成する手順について説明します。このシナリオでは、MortgageBroker プロジェクトに 3 つのリソース フォルダを作成して、事前定義された次のリソース タイプをそれぞれ保持します。
MortgageBroker プロジェクトが作成され、[プロジェクト エクスプローラ] の [Projects] の下に表示されます。
まず WSDL フォルダを作成し、このフォルダに WSDL リソースを追加する必要があります。WSDL はビジネス サービスおよびプロキシ サービスを作成するための基礎となります。次に、このシナリオで使用するその他のフォルダを作成します。
WSDL」と入力します。
WSDL フォルダが MortgageBroker プロジェクトのプロジェクト フォルダ リストに表示されます。
AquaLogic Service Bus リソースをウィザードに従ってコンフィグレーションします。各ウィザードには、リソースに関する情報の入力をユーザに要求し、プロパティのコンフィグレーション オプションを表示する一連のページがあります。
WSDL は、クライアントとサービスとのパブリック コントラクト (インタフェース仕様) を定義し、サービスがプロキシ サービスまたはビジネス サービスのどちらであるかを示します。WSDL は Web サービスの正式な記述です。WSDL は Web サービスのインタフェースの内容、保存先、呼び出し方法の記述に使用されます。まず、WSDL リソースを作成します。これは、それ以降のサービス登録手順が WSDL リソースに依存するためです。次に、WSDL を使用してビジネス サービスを登録し、プロキシ サービスを作成します。
[新しい WSDL リソースの作成] ページが表示されます。
BEA_HOME\weblogic92\samples\servicebus\examples\src\examples\webservices\jws_basic\normal\NormalLoanApprovalService.wsdl
リソースが [リソース] ペインに表示されます。表示される [新しい WSDL リソースの作成] ページは、次の図のようになります。
これで、normalLoan WSDL リソースが WSDL フォルダに作成されました。
「WSDL をインポートするには」の手順を使用して、ManagerApproval サービスと関連する WSDL リソースを作成する必要があります。ManagerApproval サービスの WSDL リソースをインポートするには、次の表に示すコンフィグレーション パラメータを使用します。
この手順では、プロキシ サービスを作成します。プロキシ サービスを使用して融資申し込みを適切なビジネス サービスにルーティングします。
[プロキシ サービスの作成 - 全般的なコンフィグレーション] ページが次の図のように表示されます。
[WSDL の選択] ページが表示されます。プロキシ サービスは最初に作成した WSDL リソースに基づいているため、その WSDL リソースをここで参照する必要があります。
[プロキシ サービスの作成 - 転送コンフィグレーション] ページが次の図のように表示されます。
| 注意 : | このページで選択したプロトコルによって、次の手順で指定するエンドポイント URI の形式が決まります。ほとんどのサービスで使用されるため、想定されるデフォルトのプロトコルは http です。 |
/loan/gateway1 に設定します。これはクライアントからのメッセージの送信先 URI です。
[プロキシ サービスの作成 - HTTP 転送コンフィグレーション] ページが次の図のように表示されます。
[プロキシ サービスの作成 - メッセージ レベル セキュリティのコンフィグレーション] ページが次の図のように表示されます。
Web サービスのセキュリティ ポリシーを定義していないため、このページのカスタム認証設定をコンフィグレーションする必要はありません。
[プロキシ サービスの作成 - 操作選択コンフィグレーション] ページが次の図のように表示されます。このページは、呼び出す Web サービス操作を識別するメッセージのメタデータを選択するページです。
| 注意 : | デフォルトのサービスは RPC Web サービスです。この結果、SOAP 本体にサービス操作の選択情報が含まれます。Java Web サービスの WSDL の操作は、Java Web サービスの public メソッドに相当します。クライアントで選択できる public メソッドが複数ある場合は、各 public メソッド タイプに WSDL の操作定義があります。SOAP ベースの RPC サービスの場合、SOAP 本体はクライアントで選択された操作 (メソッド) を示します。操作は、SOAP ヘッダで指定することもできますが、通常は SOAP 本体で指定します。 |
[プロキシ サービスの作成 - 概要] ページが次の図のように表示されます。このページには、プロキシ サービスのコンフィグレーション設定の概要が表示されます。
プロキシ サービスを登録する前に、コンフィグレーション設定を確認し、必要に応じて [編集] をクリックして変更できます。
| 注意 : | [Change Center] でセッションのコンフィグレーションをアクティブ化する前に、必ず [保存] をクリックしてください。 |
LoanGateway1 プロキシ サービスが MortgageBroker プロジェクトの ProxyService フォルダの [リソース] ペインに表示されます。
[プロキシ サービスの表示] ページが次の図のように表示されます。このページの [操作設定] タブには、プロキシ サービスのモニタを有効にするオプションがあります。
AquaLogic Service Bus ダッシュボードの使用とサービスのモニタの詳細については、以下を参照してください。
AquaLogic Service Bus Console の使い方の「モニタ」
BEA AquaLogic Service Bus オペレーション ガイドの「モニタ」
これで、AquaLogic Service Bus Console での LoanGateway1 プロキシ サービスのコンフィグレーションは完了しました。
融資ルーティングのシナリオでは、要求金利が 5% 以上の融資申し込みは、標準融資処理サービスにルーティングされて審査を受けます。要求金利が 5% 未満の融資申し込みは管理者の承認が必要であるため、管理者承認サービスにルーティングされます。
| 注意 : | このフォルダがプロジェクト ツリーに表示されない場合は、[アクティブ化] をクリックし、[送信] をクリックして、セッションの変更を登録します。MortgageBroker プロジェクト用に作成したフォルダが表示されます。[作成] をクリックしてセッションを開始し、システム コンフィグレーションを変更します。 |
[ビジネス サービスの作成 - 全般的なコンフィグレーション] ページが次の図のように表示されます。
NormalLoan」と入力します。
[ビジネス サービスの作成 - 転送コンフィグレーション] ページが次の図のように表示されます。
複数のエンドポイントとロード バランシング アルゴリズムを指定した場合、1 つのエンドポイントが実行時に過負荷状態または使用できない状態であれば、エンドポイント URI のリスト上の次のサービスにメッセージをディスパッチできます。この例はサービスが 1 つしか存在しないため、デフォルトの動作をそのまま使用するか、または [なし] を選択しても、実行時のプロキシ サービスの動作に影響しません。
http://<host:port>/njws_basic_ejb/NormalSimpleBean であることを確認します。
<host:port> で指定されたホストとポートの値は、AquaLogic Service Bus サーバが動作するマシンとポートを表します。これらの値は、プロパティ ファイル BEA_HOME\weblogic92\samples\servicebus\examples\src\examples.properties に指定された値と同じである必要があります。
詳細については、「examples.properties ファイルのコンフィグレーション」を参照してください。
| 注意 : | [既存の URI] リストの無効なエンドポイント URI を削除してください。 |
[ビジネス サービスの作成 - HTTP 転送コンフィグレーション] ページが次の図のように表示されます。
[ビジネス サービスの作成 - SOAP バインディング コンフィグレーション] ページが次の図のように表示されます。
[ビジネス サービスの作成 - 概要] ページが次の図のように表示されます。ここで、ビジネス サービスのすべての設定が適切に実装されているかどうかを確認できます。
NormalLoan ビジネス サービスのモニタを有効にするには、[リソース] ペインにある NormalLoan ビジネス サービスに対応する [モニタの管理] アイコン
をクリックします。[ビジネス サービスの表示] ページが次の図のように表示されます。このページの [操作設定] タブには、ビジネス サービスのモニタを有効にするオプションがあります。
AquaLogic Service Bus のダッシュボードの使用方法およびサービスのモニタの詳細については、以下を参照してください。
AquaLogic Service Bus Console の使い方の「モニタ」
BEA AquaLogic Service オペレーションズ ガイドの「モニタ」
AquaLogic Service Bus Console での NormalLoan ビジネス サービスのコンフィグレーションが完了しました。
要求金利が 5% 未満の融資申し込みのルーティング先ビジネス サービスの作成方法について説明します。
以下の表のコンフィグレーション パラメータを使用して、前述の「NormalLoan ビジネス サービスの作成」の手順を実行します。
「手順 1 : 環境の準備」から「手順 5 : ビジネス サービスの作成」までを完了することで、このチュートリアルに必要なリソースである 2 つのビジネス サービス (NormalLoan と ManagerLoanReview)、1 つのプロキシ サービス (LoanGateway1)、および WSDL (normalLoan) を作成しました。
プロキシ サービスに基本コンフィグレーションを設定したら、次の手順 (手順 6 : LoanGateway1 プロキシ サービスのコンフィグレーション) に進み、融資申し込みのルーティング動作を追加してプロキシ サービスのコンフィグレーションを完了できます。
AquaLogic Service Bus のメッセージ フローは、プロキシ サービスの実装を定義します。メッセージ フローには、パイプライン ペア (プロキシ サービス、またはサービスの処理用の要求パイプラインと応答パイプライン) と、ステージ、パイプライン、およびプロキシ サービスに対して定義できるエラー ハンドラ パイプラインをゼロ個以上入れることができます。パイプラインには、1 つまたは複数のステージを入れることができ、ステージにはアクションを入れることができます。LoanGateway1 プロキシ サービスのルーティング動作をコンフィグレーションするには、メッセージ フローに対して次の操作を行います。
| 注意 : | リソースの編集はセッション内で行う必要があります。セッションを開始していない場合は、[Change Center] で [作成] をクリックしてセッションを開始し、プロキシ サービスのコンフィグレーションやメッセージ フローの編集ができるようにします。 |
RouteNode1 がコンフィグレーションのページに追加されます (次の図を参照)。
[ステージ コンフィグレーションの編集 : ルート ノード] ページが、図 3-27 に示すように表示されます。このページには、[アクションの追加] という 1 つのリンクがあります。
| 注意 : | ステージはパイプラインの要素であり、パイプラインに定義されたアクションのコンテナです。アクションとは、実行時にプロキシ サービスを流れるメッセージの処理を定義するパイプライン ステージの要素です。 |
[ステージ コンフィグレーションの編集] ページにルーティング テーブルのコンフィグレーション ページが表示されます。
着信メッセージの金利要素の値に基づいてビジネス サービスにメッセージをルーティングするように、ルーティング テーブルをコンフィグレーションする必要があります。XQuery 式エディタを使用して XQuery 式を作成することで、コンテンツ ベースのルーティングをコンフィグレーションできます。
$body/exam:processLoanApp/loanRequest/java:Rate
| 注意 : | ドラッグ アンド ドロップ機能を使用できるのは Internet Explorer (IE) ブラウザのみです。IE 以外のブラウザを使用している場合は、[変数の構造] ペインで [Rate] 要素を選択します。式が [プロパティ インスペクタ] パレットに表示されます。XQuery 式のテキスト ボックスにカーソルを置いて、[プロパティのコピー] をクリックします。式がテキスト ボックスにコピーされます。パレットの式をコピーし、XQuery 式のテキスト ボックスに貼り付けることもできます。 |

これで、ルーティング テーブルにルーティング動作を決める式が含まれました。rate 要素の値が 5 未満の場合は、ルーティング テーブルのコンフィグレーションに従ってルーティングする必要があります。
これで、ManagerLoanReview ビジネス サービスへの融資申し込みのルーティング ケースが定義されました。融資申し込みの要求金利が 5% 以上の場合、そのメッセージは NormalLoan ビジネス サービスにルーティングされます。次の節では、このケース (デフォルト ケース) の説明のために、ルーティング テーブルに条件を追加する方法を示します。
この手順で、ルート ノード RouteNode1 のメッセージ フローのコンフィグレーションは完了です。
これらの手順を完了すると、[ステージ コンフィグレーションの編集] ページが次の図のように表示されます。
| 注意 : | ルーティング動作の変更を検証してからコンフィグレーションを保存することをお勧めします。 |
「手順 6 : LoanGateway1 プロキシ サービスのコンフィグレーション」によって、LoanGateway1 ルーティング テーブルの実行時メッセージ ルーティング動作のコンフィグレーションが完了します。融資申し込みで指定された金利が 5% 未満の場合、メッセージは ManagerLoanReview ビジネス サービスにルーティングされます。それ以外の場合は、NormalLoan ビジネス サービスにルーティングされます。
AquaLogic Service Bus でクライアントと対象ビジネス サービスを使用するためのコンフィグレーションが完了したので、コンフィグレーションをテストできます。このシナリオのプロキシ サービスのルーティング動作は、融資申し込みメッセージの要求金利に基づいています。金利の値を変更すると、ルーティング動作は次のように変更されます。
この節では、これらの 2 つのケースのプロキシ サービスをテストする方法について説明します。テストはコマンドラインで行います。build.xml ファイルの金利フィールドの値を変更し、ant を実行します。テストの実行後にコマンド ウィンドウに返されるメッセージに、テストの成功または失敗と、要求を処理したビジネス サービスが示されます。
| 注意 : | テストを正しく実行するため、WebLogic Server が AquaLogic Service Bus 2.6 (ServiceBusTutorial) ドメインで起動していることを確認します。 |
setEnv.cmd を実行して環境を設定します。 BEA_HOME\weblogic92\samples\servicebus\examples\src\examples\webservices\jws_basic\normal
build.xml ファイルで実行対象を編集する必要があります。antrun
これで、プロキシ サービスのルーティング ロジックがテストされます。Web サービスからの応答メッセージがコマンド プロンプトに表示されます。
[java] Loan Application Response: APPROVED BY THE <i><b>MANAGER</b></i> LOAN APPLICATION REVIEW SERVICE[java] Rate: 4.9BUILD SUCCESSFUL
この応答メッセージは、要求金利が 4.9 (5 未満) であるため、ManagerLoanReview ビジネス サービスで要求が処理されたことを示します。
build.xml ファイルを編集します。BEA_HOME\weblogic92\samples\servicebus\examples\src\examples\webservices\jws_basic\normal
| 注意 : | NormalLoan ビジネス サービスをテストするために、build.xml ファイルの金利の値を 5.1 に設定し、変更を保存します。 |
ant run
Web サービスからの応答メッセージがコマンド プロンプトに表示されます。
java] Loan Application Response: APPROVED BY THE <i><b>NORMAL</i></b> LOAN APPLICATION PROCESSING SERVICEjava] Rate: 5.1BUILD SUCCESSFUL
この応答メッセージは、要求金利が 5.1 であるため、Normal Loan ビジネス サービスで要求が処理されたことを示します。
|