ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Business Process Management Studioでのビジネス・プロセスの開発
12c (12.2.1)
E69951-01
  目次へ移動
目次

前
次
 

15 BPMプロジェクトを使用したSOAコンポジットの使用

この章では、SOAコンポジットを使用して、BPMNプロセスを設計し、他のSOAコンポーネントと統合する方法について説明します。SOAコンポジットは、BPMNプロセスとBPMプロジェクトの他のコンポーネント間の依存関係を示します。

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

SOAコンポジットの詳細は、Oracle SOA SuiteでのSOAアプリケーションの開発を参照してください。

15.1 SOAコンポジットの概要

SOAコンポジットは、相互関係を持つコンポーネントをグループ化し、異なるテクノロジを単一のアプリケーションに統合できます。コンポジットは単一のデプロイメントおよび管理モデル、エンドツーエンドのデータ・セキュリティ、およびそれに含まれるコンポーネントに統合されたメタデータ管理を提供します。

BPMプロジェクトではSOAテクノロジを使用します。それらは、SOAコンポジット・プロジェクトであり、BPMNコンポーネント・タイプおよびカレンダや組織単位などのBPMNコンポーネントに関連する構成も含まれています。プロジェクトはこのコンポジットを使用して、BPMプロジェクト内の異なるコンポーネントとそれらが公開するサービス間の関係を説明する情報を格納します。

BPMNプロセスはSOAコンポジット内のコンポーネントです。SOAコンポジット・エディタを使用して、BPMNプロセスがSOAコンポジット内の残りのコンポーネントとどのように関連しているかを表示できます。

BPMプロジェクトのSOAコンポジットは、次を示します。

  • BPMプロジェクトで使用できるSOAコンポーネント

  • BPMプロジェクトでのBPMNプロセスおよびBPELプロセス

  • SOAコンポーネントとプロセス間の関係

SOAコンポジットに、サービスを公開するコンポーネントまたは外部参照が含まれている場合、これらはビジネス・カタログに表示されます。ビジネス・カタログの詳細は、「ビジネス・カタログの使用」を参照してください。

SOAコンポジットにコンポーネントを追加すると、BPMプロジェクトで使用できるように、ビジネス・カタログに自動的に表示されます。

再使用可能なプロセスは、SOAコンポジットに表示されません。ビジネス・プロセスを変更して再使用可能なプロセスに変換すると、SOAコンポジットに表示されなくなります。再使用可能なサブプロセスの詳細は、「コール・アクティビティを使用したプロセス起動の概要」を参照してください。

SOAコンポジットは、BPMプロジェクトをデプロイするのに使用する単位です。SOAコンポジットに表示されるコンポーネントおよび依存関係は、プロジェクトのデプロイ方法を指定します。SOAコンポジットからプロセスまたはワイヤを削除すると、これらがBPMプロジェクトにまだ表示されていても、プロジェクトのデプロイ時に無視されます。

15.1.1 SOAコンポジットとSOAコンポーネント間の関係の理解

BPMプロジェクトを実行すると、SOAエンジンはSOAコンポジット・インスタンスを作成します。SOAコンポジット・インスタンスには、SOAコンポーネントのインスタンスが含まれています。ただし、参照コンポーネントは自動的には作成されません。サービスにリンクされているインスタンスは、そのサービスが呼び出され、その結果としてコンポジットが作成されるときに作成されます。BPMNプロセスに結び付けられているヒューマン・タスクの場合、BPMNプロセス・インスタンスはそのBPMNプロセスがトリガされたときに作成されます。

15.1.2 SOAコンポーネントの使用

SOAコンポジットでサービスとして公開されたすべてのSOAコンポーネントおよび外部参照は、ビジネス・プロジェクト内のビジネス・カタログに表示されます。

既存のSOAプロジェクトに基づいてBPMプロジェクトを作成した場合、SOAプロジェクトでサービスとして公開されたすべてのコンポーネントおよび外部参照は、ビジネス・カタログに自動的に表示されます。

実装でコンポーネントを使用するBPMNプロセスにアクティビティがある場合、SOAコンポジットは、BPMNプロセスとコンポーネント間のワイヤを示します。

ワイヤは、サービスと参照間の関係を表します。BPMNプロセスを保存すると、Oracle BPM Studioは、BPMNプロセスとそれが使用するコンポーネント間のワイヤを自動的に更新します。サービスは、コンポーネントが公開するインタフェースを表します。参照は、コンポーネントが必要とするサービス・インタフェースを表します。サービスおよび参照の詳細は、Oracle SOA SuiteでのSOAアプリケーションの開発を参照してください。

BPMNプロセスのアクティビティのいくつかは、実装するにはそれらにSOAコンポーネントを割り当てることを必要とします。これらのコンポーネントの多くでは、それらをOracle BPM Studioユーザー・インタフェースから追加するのか、SOAコンポジット・エディタを使用するのかを選択できます。SOAコンポジット・エディタから、BPMプロジェクトに次のSOAコンポーネントを追加できます。

  • サービス・アダプタ

  • ヒューマン・タスク

  • ビジネス・ルール

  • メディエータ

  • BPELプロセス

メディエータおよびBPELプロセスは、SOAコンポジット・エディタからのみ使用できます。

SOAコンポジットに追加されたSOAコンポーネントがそれ自身をサービスとして公開する場合、コンポーネントはビジネス・カタログに表示されます。BPMNプロセスにアクティビティを実装するビジネス・カタログ内のすべてのコンポーネントを使用できます。BPMNアクティビティの実装方法の詳細は、次の部にある章を参照してください。

図15-1 SOAコンポジット内のBPMNプロセス

「図15-1 SOAコンポジット内のBPMNプロセス」の説明が続きます
「図15-1 SOAコンポジット内のBPMNプロセス」の説明

15.1.3 SOAコンポジット内のBPMNプロセス

BPMNプロセスを追加すると、SOAコンポジットに自動的に追加されます。BPMプロセスは、SOAコンポジット内のコンポーネントとして表示されます。

BPMNプロセスにタイプ・メッセージの開始イベントが含まれる場合、プロセスのインタフェースは、公開されたサービスとして表示されます。

SOAコンポジットは、BPMプロジェクトが使用する異なるコンポーネントにプロセスがどのように依存するかを示します。プロジェクトのアクティビティが、実装のためにSOAコンポーネントによって公開されたサービスを使用する場合、SOAコンポーネントは、公開されたサービスとBPMNプロセスの間に線を表示します。この線は、BPMNプロセスと公開されたサービスをリンクするワイヤを表します。

15.1.4 BPMNエラーがSOAコンポジットのステータスに与える影響

SOAコンポジットのコンポーネントのステータスによって、SOAコンポジットのステータスが決まります。BPMNプロセスで例外が発生すると、SOAコンポジットのステータスは失敗としてマークされます。BPMNプロセスが例外を処理し、実行を正常に終了したとしても、SOAコンポーネントのステータスは失敗とマークされます。

15.2 BPMプロジェクトでSOAコンポジットを開く

BPMプロジェクトはSOAプロジェクトの上に配置されます。SOAプロジェクトにはSOAコンポジットが含まれています。SOAコンポーネントをBPMプロジェクトに追加するには、SOAコンポジット・エディタを使用する必要があります。

SOAコンポジットに追加したSOAコンポーネントは、BPMプロジェクトのビジネス・カタログに自動的に表示されます。

15.2.1 BPMプロジェクトでSOAコンポジットを開く方法

BPMプロジェクトに含まれるSOAコンポジットを開いて、新規SOAコンポーネントを追加するか、既存のSOAコンポーネントを編集できます。

BPMプロジェクトでSOAコンポジットを開くには:

  1. 「アプリケーション」ウィンドウを選択します。
  2. プロジェクトのSOAディレクトリにあるコンポジット・ファイルをダブルクリックします。

    コンポジット・ファイルの名前は、プロジェクトの名前と一致します。

    SOAコンポジット・エディタが開きます。

15.3 BPMプロジェクトでSOAコンポジットからBPMNプロセスを開く

BPMプロジェクトではSOAテクノロジを使用するため、BPMプロジェクトにはSOAコンポジットが含まれています。SOAコンポジット・エディタを使用して、BPMプロセスとBPMプロジェクト内の他のコンポーネントとの依存関係を表示できます。

また、新しいコンポーネントをBPMプロジェクトに追加することもできます。

15.3.1 BPMプロジェクトでSOAコンポジットからBPMNプロセスを開く方法

「アプリケーション」ウィンドウへの切替えを行わずに、SOAコンポジットからBPMNプロセスを開くことができます。

BPMプロジェクトでSOAコンポジットからBPMNプロセスを開くには:

  1. SOAコンポジット・エディタを開きます。
  2. 開くBPMNプロセスをダブルクリックします。

    BPMNプロセス・エディタが表示されます。プロセスに加えた変更は、SOAコンポジットに表示されます。

15.4 SOAコンポジット・エディタからのBPMNプロセスの追加

新しいBPMNプロセスをSOAコンポジット・エディタから直接追加できます

「アプリケーション」ウィンドウに切り替える必要はありません。

15.4.1 SOAコンポジット・エディタからBPMNプロセスを追加する方法

ビジネス・アプリケーション・インフラストラクチャの分析中にBPMNプロセスの必要性を識別する場合、SOAコンポジット・エディタを開いた状態で、BPMNプロセスを直接追加できます。

SOAコンポジット・エディタからBPMNプロセスを追加するには:

  1. SOAコンポジット・エディタを開きます。

  2. 「コンポーネント」ウィンドウの「コンポーネント」セクションから、「BPMNプロセス」を選択します。

  3. SOAコンポジット・エディタの「コンポーネント」領域に、選択したコンポーネントをドラッグします。

    BPMN 2.0プロセス・ウィザードが表示されます。

15.4.2 SOAコンポジット・エディタからのBPMNプロセスの追加時に行われる処理

BPMNプロセスは、SOAコンポジット・エディタでコンポーネントとして表示されます。新規プロセスは、「アプリケーション」ウィンドウの「プロセス」フォルダに表示されます。

BPMNプロセスを編集するには、BPMNプロセスを右クリックして「編集」を選択するか、BPMNプロセスをダブルクリックします。

15.5 SOAコンポジットを使用したBPELプロセスとの統合

SOAコンポジット・エディタでは、プロジェクトのBPELプロセスおよびBPMNプロセスを示します。コンポジット・エディタを使用して、BPELプロセスとBPMNプロセスとの統合を設計できます。

BPELプロセスからBPMNプロセスを使用するには、BPELプロセスのパートナ・リンクとしてBPMNプロセスを追加する必要があります。BPELプロセスのパートナ・リンクとしてBPMプロセスを追加するには、SOAコンポジット・エディタを使用する必要があります。パートナ・リンクとしてBPMNプロセスを追加すると、BPELエディタを使用して、BPMNプロセスをBPELプロセスのアクティビティにリンクできます。BPELプロセスの編集の詳細は、Oracle SOA SuiteでのSOAアプリケーションの開発を参照してください。

BPMNプロセスからBPELプロセスを使用するには、BPELプロセスをSOAコンポジットに追加する必要があります。これを行うと、BPELプロセスはビジネス・カタログに表示されます。ビジネス・カタログでBPELプロセスを使用して、BPMNプロセスにアクティビティを実装できます。

図15-2 BPELプロセスのパートナ・リンクとしてのBPMNプロセス

「図15-2 BPELプロセスのパートナ・リンクとしてのBPMNプロセス」の説明が続きます
「図15-2 BPELプロセスのパートナ・リンクとしてのBPMNプロセス」の説明

15.6 BPELプロセスでのパートナ・リンクとしてのBPMNプロセスの追加

BPELプロセスからBPMNプロセスを使用するには、パートナ・リンクとしてBPMNプロセスを追加する必要があります。

その後、BPELエディタを使用して、BPELプロセスのアクティビティからBPMNプロセスを起動できます。

15.6.1 BPELプロセスでのパートナ・リンクとしてBPMNプロセスを追加する方法

BPELプロセスからBPMNプロセスを使用するには、まずBPELプロセスのパートナ・リンクとしてBPMNプロセスを追加する必要があります。

BPELプロセスのパートナ・リンクとしてBPMNプロセスを追加するには:

  1. SOAコンポジット・エディタを開きます。
  2. BPELプロセス・コンポーネントの上にマウス・ポインタを置きます。

    BPELプロセス・コンポーネントの両側にオレンジ色の矢印が表示されます。左側の矢印では新規サービスを追加できます。右側の矢印では新規参照を追加できます。

  3. 右の矢印をクリックしてドラッグします。

    緑色のリンクが表示され、BPMNプロセスによって公開されたサービスなど、コンポジット内のコンポーネントによって公開されたすべてのサービスが緑色になります。

  4. パートナ・リンクとして追加するBPMNプロセスのサービスでリンクをドロップします。

15.6.2 BPELプロセスでのパートナ・リンクとしてのBPMNプロセスの追加時に行われる処理

BPMNプロセスはBPELプロセスのパートナ・リンクとして表示され、BPELプロセスからBPMNプロセスを起動できます。

15.7 Webサービスを使用したBPMNプロセスへの接続

BPMNプロセスでプロセス・インタフェースを定義すると、Webサービスを使用してそのプロセスに接続できます。プロセス・インタフェースが定義されたBPMNプロセスはすべて、SOAコンポジットに表示されます。

プロセス・インタフェースの定義の詳細は、「プロセス・インタフェースの定義」を参照してください。

カスタムWebサービス・クライアントを使用してBPMNプロセスに接続するには、Oracle Enterprise Managerにログインし、そのコンポジットのダッシュボード・ページから行う必要があります。このページにはWSDL URLへのリンクが含まれます。WSDLには、BPMNプロセスへの接続に必要なサービスの場所情報が含まれています。

15.8 BPMプロジェクトのビルド

BPMプロジェクトをSOAランタイムにデプロイすると、プロジェクトが自動的にビルドされます。ビルドに失敗すると、デプロイメントも失敗します。

Oracle JDeveloperからBPMプロジェクトをビルドし、ビルドのエラーを表示して修正できます。

BPMプロジェクトをビルドすると、コンパイラ・ログ・ウィンドウに結果が表示されます。

エラーがある場合は、「コンパイラ」タブを選択してエラーをクリックし、対応するエディタを開いて修正できます。

15.8.1 BPMプロジェクトをビルドする方法

BPMプロジェクトをビルドするには:

  1. BPMプロジェクトを開きます。
  2. 「アプリケーション」ウィンドウを選択します。
  3. プロジェクトと対応するファイルを右クリックします。
  4. 「プロジェクトのメイク」を選択します。

    Oracle JDeveloperは、BPMプロジェクトをコンパイルします。コンパイラ・ログ・ウィンドウに、コンパイルの結果が表示されます。