ヘッダーをスキップ
Oracle SOA Suite開発者ガイド
10g(10.1.3.1.0)
B31839-01
  目次へ
目次
索引へ
索引

前へ
前へ
 
次へ
次へ
 

7.1 Oracle BPEL Process Managerの概要

Oracle BPEL Process Managerは、Business Process Execution Language(BPEL)標準に基づいて、アプリケーションをまたがるビジネス・プロセスを設計、デプロイおよび管理するためのフレームワークを提供します。 BPELは、ビジネス・プロセスのワークフローを作成し、XMLベースのWebサービスを組み込むためのXMLベースの言語です。 したがって、作成されたBPELアプリケーションでは、Webコンピューティングの標準を利用してアプリケーション(つまり、ビジネス・プロセス)が配信され、サービス指向アーキテクチャ(SOA)の枠組がサポートされます。

BPELプロセスでは、すべてのデータがXML形式で記述されます。 XML形式で記述されるものには、BPELプロセスが受渡しするメッセージ、外部サービスと交換されるメッセージおよびすべての変数が含まれます。 これらのメッセージおよび変数のタイプは、BPELプロセス自体のWeb Services Description Language(WSDL)ファイルに、またはBPELプロセスが起動するWebサービスのWSDLファイルに、XMLスキーマで定義します。 WSDLは、BPELプロセスの入出力メッセージ、サポートされているクライアント・インタフェースと操作、およびその他の機能を定義します。 このWSDLの機能によって、BPELプロセスはWebサービスとしてコールされます。 XML変数はBPELコード内で操作されます。XML変数の操作には、Webサービスに必要な異なる書式間でのデータ・トランスフォーメーションや、データのローカル操作(複数のWebサービスを起動して得た結果を連結するなど)があります。

BPELプロセスを設計する際は、ビジネス・ワークフローの実行に必要な順序でBPELビルディング・ブロック(アクティビティとサービス)を指定することで、ビジネス・プロセスをモデル化します。 この章では、BPELプロジェクトの作成方法やWebサービスの起動方法などの基本的な事項に加え、SOA Order BookingアプリケーションのBPELコンポーネントを理解するために必要となる主要なアクティビティおよびサービスについて説明します。 この章で説明するアクティビティおよびサービスを理解するための概要は、次の説明を参照してください。

BPELのすべてのアクティビティおよびサービスの詳細は、『Oracle BPEL Process Manager開発者ガイド』を参照してください。

図7-1に、BPELプロセスがクライアント・アプリケーションからリクエストを受信する方法、そのリクエストを処理するWebサービスを起動する方法、およびクライアントに値を戻す方法を示します。 この図では、非同期でのWebサービスの起動を表現しています。したがって、コールバックを使用してクライアントに結果を戻しています。 非同期プロセスは、実行が長時間にわたる本番環境に適しており、クライアントまたはパートナ・リンクがレスポンスを待機する必要はありません。

図7-1 BPELプロセスと非同期でのサービスの起動

図7-1の説明は次にあります。
「図7-1 BPELプロセスと非同期でのサービスの起動」の説明

BPELプロセスでは、receiveアクティビティとreplyアクティビティ間で、BPELプロセスがクライアント・リクエストを入力変数に割り当て(prepareRequest)、リクエストの内容をリクエスト変数に指定してWebサービスにリクエストを送信することでリクエストを起動し(initiateRequest)、Webサービスからレスポンスを受信し(waitForCallback)、リプライを読み込むためにレスポンスを出力変数に割り当てます(readResponse)。 図7-1に示すように、Oracle BPEL Process Managerでは、非同期プロセスのinvokeアクティビティの後、デハイドレーション(デハイドレーション・ストア・データベースへのプロセスの格納)が自動的に実行されます。 デハイドレーション・データベースの設定方法については、『Oracle BPEL Process Managerインストレーション・ガイド』を参照してください。

BPELプロセスには、様々なWebサービスへのパートナ・リンクが含まれています。 パートナ・リンクは、BPELプロセスが相互作用する外部サービスを定義します。 パートナ・リンク・タイプは、対話において各サービスが果たす役割を定義すること、および対話のコンテキスト内でメッセージを受信するために各サービスが提供するポート・タイプを指定することで、2つのサービス間での対話関係の特性を決定します。 SOA Order Bookingアプリケーションでは、Oracle Enterprise Service Busがルーティングする注文情報を使用して、クライアント・パートナ・リンクがBPELプロセスを開始します。SOA Order BookingアプリケーションにおけるBPELプロセスの詳細は、第2章「SOA Order Bookingアプリケーション」を参照してください。

Oracle BPEL Process Managerの詳細は、次の各マニュアルを参照してください。

この章では、次のことを理解できます。