Oracle Enterprise Service Bus クイック・スタート・ガイド 10g(10.1.3.1.0) B31901-01 |
|
この章では、このマニュアルの構成、Oracle Enterprise Service Bus機能の概要、概念およびツールについて説明し、このチュートリアルに示す手順に従って作成、構成および実行できるシナリオを示します。
項目は次のとおりです。
このマニュアルは、5つの章で構成されています。 次の表に、各章の概要を示します。
エンタープライズ・サービス・バスにより、企業内および企業外の複数のエンドポイント間でデータを転送できます。 ビジネス・ドキュメント(Extensible Markup Language(XML)メッセージとして)の異種アプリケーション間での結合、変換およびルーティングには、オープン標準が使用されます。 これにより、既存のアプリケーションへの影響を最小限に抑えてビジネス・データを監視および管理できます。 エンタープライズ・サービス・バスは、サービス指向アーキテクチャ(SOA)およびイベント駆動アーキテクチャ(EDA)を配信するための基礎となるインフラストラクチャです。
Oracle Enterprise Service Busは、SOAおよびEDAを使用したサービスの基礎になります。 その核心にあるのは疎結合のアプリケーション・フレームワークで、業界標準を使用する分散化された異機種間のメッセージ指向環境におけるビジネスに、高度な柔軟性、再利用性および全体的な応答性を提供します。
図1-1に示すように、Oracle Enterprise Service Busは次のコンポーネントで構成されています。
ESBサーバーは、JDeveloper ESB Designerを使用して設計し、ESB Consoleを使用して構成したESBサービスを登録するサーバーです。 ESBサーバーではHTTP/SOAP、JMS、JCA、WSIFおよびJavaを含む複数のプロトコル・バインディングがサポートされ、同期/非同期、リクエスト/リプライまたはパブリッシュ/サブスクライブの各モデルを使用した保証付きで信頼できるメッセージ配信が可能です。 ただし、ESBサーバーではRemote Method Invocation(RMI)はサポートされません。
ESB Consoleでは、ESBサーバーに登録したサービスを操作、管理およびデバッグするためのWebベース・インタフェースが提供されます。
スキーマ、トランスフォーメーションおよびルーティング・ルールなどのESBメタデータを保持するデータベースです。
Oracle JDeveloperは、Oracle Enterprise Service Busシステムを構成するサービスをグラフィカルでわかりやすくモデル化、編集および設計するための方法です。
Oracle Enterprise Service Busは、Oracle SOA Suiteのコンポーネントです。 Oracle SOA Suiteは、エンタープライズ・アプリケーションを開発するための統合された設計時環境と共通アーキテクチャを備えた標準ベースのスイートです。 Oracle SOA Suiteを使用すると、サービスを作成して管理し、複合アプリケーションやビジネス・プロセスに組み込むことができます。図1-2に、Oracle Enterprise Service BusとOracle SOA Suiteの統合を示します。
Oracle Enterprise Service Busにはアプリケーションを統合する機能があり、この機能は、次の各項で説明するように、主に3つのカテゴリに分類されます。
接続性は、次に説明するように、アダプタ・サービスおよびSimple Object Access Protocol(SOAP)呼出しサービスを介して提供されます。
SOAP呼出しサービスによって、Oracle BPEL Process Manager、Apache Axis、Microsoft .NETなど、外部のSOAPクライアントと接続できます。これらのクライアントからOracle Enterprise Service Busサービスを呼び出したり、Oracle Enterprise Service Busからこれらの製品を呼び出すことができます。
たとえば、Oracle BPEL Process ManagerからOracle Enterprise Service Busを呼び出して、Oracle Enterprise Service Busが提供する文書ルーティング機能(次の項を参照)を利用したり、Oracle Enterprise Service BusからMicrosoft .NETを呼び出して、レガシーなMicrosoft .NETインフラストラクチャを統合できます。
Oracle Application Serverアダプタによって、企業内のほとんどすべてのデータ・ソースに双方向かつリアルタイムにアクセスできます。
アダプタは、サポートするソース・アプリケーション内のイベントをリスニングまたはポーリングします。 イベントをリスニングする場合、アダプタは、そのアダプタにイベントをプッシュするように構成されたアプリケーションのリスナーとして登録されます。 また、アダプタは、Oracle Enterprise Service Busで必要なイベントについて、データベースやファイルなどのバックエンド・アプリケーションをポーリングできます。
(ウィザードを使用して)アダプタをOracle Enterprise Service Busに登録することによって、外部データ・ソースをOracle Enterprise Service Busに統合し、最終的に相互に統合します。
現在、Oracle Enterprise Service Busサーバーにより、表1-1に示すOracleアダプタがサポートされており、それぞれに対してインバウンドおよびアウトバウンド・アダプタ・サービスを定義できます。 インバウンド・アダプタ・サービスは、データを外部データ・ソースから受信し、XMLメッセージに変換します。 アウトバウンド・アダプタ・サービスは、XMLメッセージを指定されたアダプタのネイティブ書式に変換することによって、データをターゲット・アプリケーションに送信します。
Oracle Enterprise Service Busサービスとして作成したすべてのサービスは、インバウンド・アダプタ・サービスを除いて、SOAPサービスとして自動的に作成され、構成詳細を指定する必要はありません。 Oracle Enterprise Service Bus Control Console(「Oracle Enterprise Service Bus Control Consoleの概要」を参照)の「定義」タブには、これらのサービスの具体的なWSDL URLがリストされます。 この具体的なWSDL URLを使用して、JDeveloperまたはMicrosoft .NetからHypertext Transfer Protocol(HTTP)を介してSOAPを使用するサービスを呼び出すことができます。
Oracle Enterprise Service Busには、標準ベースのデータ・マッパー(Oracle JDeveloperまたはEclipse Platformモデリング環境内からの)が含まれています。 データ・マッパーは、.xslt
ファイルを指定してデータをXMLスキーマ間で変換します。これにより、異なるスキーマを使用するアプリケーション間でのデータ交換が可能になります。 目的の結果を得るには、複数のトランスフォーメーションが必要になる場合があります。 これらのトランスフォーメーションは、必要に応じて、企業内で再利用できます。
XMLメッセージ内に格納されているデータは、ルーティング・サービスを使用して、ソース・アプリケーションからターゲット・アプリケーションに配布されます。 ルーティング・サービスは、その名前が示すように、XMLメッセージに適用されるルーティング・ルールとトランスフォーメーション、および適用される様々なルールの定義に従って、Oracle Enterprise Service Bus環境内の異なるポイント間でメッセージを送受信する方法を決定します。 また、ルーティング・サービスによって、外部サービス・エンドポイントをBPELのビジネス・プロセスから分離することもできます。 メッセージ・コンテンツに基づいてメッセージをルーティングするルールを定義できるため、ルーティング・サービスはコンテンツ・ベースのルーティング・サービスとも呼ばれます。
ルーティング・ルールでは、ルーティング・サービスがメッセージを受信するとOracle Enterprise Service Busが呼び出すサービスのセット(ターゲット・サービスと呼ばれます)を指定します。
ルーティング・ルールを構成するときは、次の詳細を指定します。
フィルタ式は、サービスの呼出し前にメッセージのコンテンツ(ペイロード)が分析されるように指定します。 たとえば、「CustomerDataチュートリアルの概要」で説明するシナリオを使用した場合、メッセージに顧客の連絡先情報が含まれている場合のみデータベース・アダプタ・サービスを呼び出すように指定するフィルタ式を適用できます。
トランスフォーメーションについては、「文書トランスフォーメーション」を参照してください。
同期して実行するように指定した場合、Oracle Enterprise Service Busはターゲット・サービスをただちに呼び出します。 ターゲット・サービスがメッセージを受信して処理するまで、制御は現行サービスに戻りません。
非同期で実行するように指定した場合、Oracle Enterprise Service BusはJMSを使用してメッセージをターゲット・サービスに配信します。このターゲット・サービスは後で呼び出されます。 ターゲット・サービスがメッセージを受信する前に、制御はただちに現行サービスに戻されます。
Oracle Enterprise Service Busの作成、構成および管理で使用する主要なツールは次の2つです。
Oracle Enterprise Service Bus Control Consoleは、主に実行時に使用します。 次の各操作を実行できます。
図1-4に示すように、Oracle Enterprise Service Bus Control Consoleには、インバウンドおよびアウトバウンド・アダプタ・サービス、ルーティング・サービス、およびそれらの間の接続がグラフィカルに表示されます。
Oracle Enterprise Service Bus Control Consoleには、ルーティング・サービスのルーティング・ルールを指定または調整できるプロパティ・ページが表示されます。 たとえば、このページを使用して、フィルタ式の指定、ルーティング操作に関連する文書トランスフォーメーション・ファイルの追加や変更を実行できます。
Oracle Enterprise Service Bus Control Consoleを使用すると、インスタンスのランタイム・データを表示できます。
また、Oracle Enterprise Service Bus Control Consoleを使用して、ルーティング・サービス、システムおよびサービス・グループを作成できます。 システムおよびサービス・グループについては、「Oracle Enterprise Service Bus Control Consoleの概要」で説明します。
Oracle JDeveloperは、主に、Enterprise Service Bus全体の作成と構成を指定するために使用します。 次の各操作を実行できます。
Oracle JDeveloperには、インバウンドおよびアウトバウンド・アダプタ・サービスの作成を支援するアダプタ構成ウィザードが用意されています。
Oracle JDeveloperでは、アダプタ構成ウィザードでインバウンド・アダプタ・サービスを作成し、新規に作成したそのインバウンド・アダプタ・サービスからルーティング・サービスを作成します。
Oracle JDeveloperでは、アダプタ構成ウィザードでアウトバウンド・アダプタ・サービスを作成し、新規に作成したアウトバウンド・ルーティング・サービスにルーティングするルーティング・サービスを指定します。
.xslt
ファイル)の指定または作成インバウンド・アダプタ・サービスからルーティング・サービスを作成するとき、またはアウトバウンド・アダプタ・サービスへの既存のルーティング・サービスを指定するときは、トランスフォーメーションが必要かどうかを指定できます。
トランスフォーメーションが必要な場合は、既存のトランスフォーメーション・ファイルを使用するか、新規のトランスフォーメーション・ファイルを作成するかを指定できます。 新規のトランスフォーメーション・ファイルを作成するように指定すると、Oracle JDeveloperでは、データ・マッパー・ツールが開き、作成作業を実行できます。
これらのツールの詳細は、次の各項を参照してください。
Oracle JDeveloperは、Java、XMLおよびSQL標準を使用するアプリケーションやWebサービスを作成するための統合開発環境(IDE)です。Oracle JDeveloperは、アプリケーションを設計、コーディング、デバッグ、テスト、プロファイリング、チューニングおよび登録するための統合された機能によって、開発ライフ・サイクル全体をサポートします。 視覚的かつ宣言的な開発アプローチとOracle Application Development Framework(ADF)をあわせて利用することによって、アプリケーション開発が簡素化され、コーディング作業が軽減されます。
Oracle Enterprise Service Busでは、Oracle JDeveloperの次のサービスとアダプタがサポートされています。
図1-3に、プロジェクトのトランスフォーメーションを設計しているOracle JDeveloperを示します。
アプリケーション・ナビゲータには、作成済のプロジェクト・ファイルが表示されます。 たとえば、図1-3に示すアプリケーション・ナビゲータには「ESBSamples」という名前のアプリケーションが表示され、これには「CustomerData」という名前のプロジェクト・ノードが含まれています。
(図1-3に示すように)CustomerDataノードを開くと、アプリケーションのアダプタ・サービスを定義する.wsdlファイル、およびOracle Enterprise Service Busでルーティングされるデータの構造を定義する.xsdファイルを表示できます。
ノードを右クリックすると、コマンドのメニューが表示されます。 表示されるメニュー・コマンドは、選択したノードによって異なります。 たとえば、ESBプロジェクト(例: 図1-3に示すCustomerData)を右クリックすると、メニューには次のコマンドが表示されます。
このコマンドを選択すると「新規ギャラリ」ダイアログ・ボックスが開き、新規プロジェクトの作成、インバウンドおよびアウトバウンド・アダプタ・サービスの作成、文書トランスフォーメーション・ツールへのアクセスを実行するためのダイアログ・ボックスやウィザードにアクセスできます。
たとえば、図1-1に示すように、「新規ギャラリ」ダイアログ・ボックスで「Business Tier」カテゴリを開き、「Webサービス」を選択すると、アダプタ構成ウィザードにアクセスできます。
このコマンドを選択すると、Oracle JDeveloperを使用して設計したアダプタ・サービス、トランスフォーメーションおよびルーティング・サービスをOracle Enterprise Service Busに登録できます。
Oracle Enterprise Service Bus Control Consoleは、Oracle Enterprise Service Bus構成を監視してランタイム調整を行うために使用します。図1-4に例を示します。 図1-4に示すように、縦に二分割されたConsoleには、「サービス」パネルと構成領域があります。それぞれについて次の各項で説明します。
図1-5に、Oracle Enterprise Service Bus Control Consoleでオブジェクトを表すために使用されるアイコンとイメージを示します。
サービスとは、アプリケーション間およびOracle Enterprise Service Bus環境の内外でデータを送受信する手段です。 Consoleの左側に表示されるサービス・ナビゲーション・ツリーは、サービスの構成と管理に役立ちます。 ナビゲーション・ツリーでは、サービスは歯車アイコンで表されます。
(ユーザーが作成する)サービスの次の構成ユニットは、ファイル・システムにおけるディレクトリと同じ役割を果します。
システムは、単一のアプリケーション、アプリケーションのプロキシ、または技術的なシステムを表します。 システムの例は次のとおりです。
図1-5に示すように、Oracle Enterprise Service Bus Control Consoleでは、システムは重なったディスクのアイコンで表されます。
サービス・グループは、関連するサービスのセットです。
各サービスは、1つのサービス・グループにのみ属します。 同じ名前が付いた異なるサービスは、別々のサービス・グループに属することができます。これは、ファイル・システムで、同じファイル名が付いた異なるファイルが別々のディレクトリに存在できるのと同じです。
図1-5に示すように、ナビゲーション・ツリーでのサービス・グループは、歯車アイコンを重ねたフォルダ・アイコンで表されます。
作成するすべてのサービスは、サービス・グループまたはシステムの子として定義する必要があります。 サービスは、そのフルパスによって、システム/サービス・グループ/サービス(またはシステム/サービス)構造内で一意に識別されます。 図1-5に示すように、サービス・ナビゲーション・ツリーでのサービスは、歯車アイコンで表されます。
Consoleの右側に表示される構成領域は、複数のタブ・ページで構成されています。 「サービス」パネルで選択したアイテムに応じて、次のタブ・ページが表示されます。
「ダイアグラム」タブをクリックしたときに表示されるパネルには、ダイアグラム自体、ナビゲータおよびオーバーレイ・メトリックの3つの部分が表示されます。
ダイアグラムは、選択したサービスと他のサービスの間の関係を示します。Oracle Enterprise Service Busでは、各サービスに対して指定した定義に基づいて、このダイアグラムが自動的に作成されます。
ナビゲーション・ツリーからアイテムを選択して「ダイアグラム」タブをクリックすると、選択したアイテムがダイアグラム内で青色にハイライト表示されます。 ダイアグラム内では、図1-5に示すように、次の規則が使用されます。
ナビゲータには、現在表示されているダイアグラムの領域が、そのダイアグラム全体との関連で示されます。 これは、ダイアグラム・リージョンに表示しきれない大きいダイアグラムの場合に便利です。 ダイアグラム・リージョンでスクロール・バーを移動すると、ナビゲータの青色のウィンドウもスクロールして、現在表示されているダイアグラムの部分がハイライト表示されます。
オーバーレイ・メトリックを使用すると、ダイアグラムに重ねて表示するメトリック(ある場合)を選択できます。 たとえば、「処理時間。」を選択すると、「ダイアグラム」タブの表示は図1-6に示すようになります。
「定義」タブには、ナビゲーション・ツリーから選択したアイテムの定義方法の詳細が表示されます。 アウトバウンド・アダプタ・サービスおよびルーティング・サービスの場合、表示される詳細には具体的なWSDL URLが含まれます。このWSDL URLを使用すると、別のアプリケーションからHTTPを介してSOAPを使用するサービスを呼び出すことができます。
「ルーティング・ルール」タブは、ナビゲーション・ツリーからルーティング・サービスを選択した場合のみ表示されます。 このタブには、ルーティング・サービスによるメッセージのルーティング方法を規定するルールが表示されます。 ルーティング・サービスの詳細は、「コンテンツ・ベースのルーティング」を参照してください。
「トラッキング可能フィールド」タブを使用すると、表示するサービスのXML文書内の要素を識別してインスタンス・データを検索するXPath式を定義できます。
|
![]() Copyright © 2006 Oracle Corporation. All Rights Reserved. |
|