ヘッダーをスキップ
Oracle® Fusion Middleware Oracle SOA SuiteおよびOracle Business Process Management Suite管理者ガイド
11g リリース1 (11.1.1.5.0)
B55916-05
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次
索引へ移動
索引

前
 
次
 

1 概要と概念

この章では、Oracle Fusion MiddlewareのコンポーネントであるOracle Service-Oriented Architecture(SOA)Suite、Oracle Business Process Management(BPM)Suiteの概要、およびOracle Enterprise Manager Fusion Middleware Controlを使用したOracle SOA SuiteとOracle BPM Suiteの管理について説明します。

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

Oracle Enterprise Manager Fusion Middleware Controlの管理タスクおよびOracle Fusion Middlewareの概要は、次のドキュメントを参照してください。

1.1 Oracle Fusion Middlewareの概要

Oracle Fusion Middlewareは、標準ベースのソフトウェア製品群であり、Java EE、開発ツール、統合サービス、ビジネス・インテリジェンス、コラボレーションなど、様々なツールとサービスを提供します。また、アプリケーションの開発、デプロイメントおよび管理を完全にサポートします。

1.2 Oracle SOA Suiteの概要

Oracle SOA Suiteは、Oracle Fusion Middlewareのミドルウェア・コンポーネントの1つです。SOAコンポジット・アプリケーションの設計、デプロイおよび管理に対応するサービス・インフラストラクチャ・コンポーネントの完全なセットを提供します。Oracle SOA Suiteを使用すると、サービスを作成して管理し、SOAコンポジット・アプリケーションに組み込むことができます。コンポジットによって、複数のテクノロジ・コンポーネントを組み合せて1つのSOAコンポジット・アプリケーションを作成できます。Oracle SOA Suiteは、異種ITインフラストラクチャへの接続を行い、企業がSOAを段階的に採用できるようにします。

Oracle SOA Suiteは、Oracle Enterprise Manager Fusion Middleware Controlから管理できます。次の各項で、Oracle SOA Suiteのコンポーネントの概要を示します。

Oracle SOA Suiteの概要は、『Oracle Fusion Middleware Oracle SOA Suite開発者ガイド』を参照してください。

1.2.1 SOAインフラストラクチャ・アプリケーションの概要

SOAインフラストラクチャは、Oracle WebLogic Serverで実行されるJava EE準拠のアプリケーションです。アプリケーションでは、コンポジットとそのライフサイクル、サービス・エンジンおよびバインディング・コンポーネントが管理されます。

Oracle JDeveloperで設計したSOAコンポジット・アプリケーションをSOAインフラストラクチャ上の選択したパーティションにデプロイします。パーティションはSOAインフラストラクチャの個別のセクションであり、管理を簡単にするためにコンポジット・アプリケーションを論理的にグループ化できます。

図1-1に示した例では、多数のSOAコンポジット・アプリケーションがSOAインフラストラクチャにデプロイされ、Oracle Enterprise Manager Fusion Middleware Controlに表示されています。

SOAインフラストラクチャのホーム・ページからは、SOAコンポジット・アプリケーションの監視、個々のコンポジット・インスタンスの監視、SOAコンポジット・アプリケーションおよび個々のコンポジット・インスタンスの状態の更新などの管理タスクを実行できます。フォルト・リカバリなどの修正処理も実行できます。

図1-1 SOAインフラストラクチャにデプロイされたSOAコンポジット・アプリケーション

図1-1の説明が続きます
「図1-1 SOAインフラストラクチャにデプロイされたSOAコンポジット・アプリケーション」の説明

「コンポジット」表の特定のSOAコンポジット・アプリケーションをクリックすると、そのホーム・ページにアクセスできます。図1-2に、SOAコンポジット・アプリケーションのホーム・ページの上部を示します。SOAコンポジット・アプリケーションのホーム・ページからは、インスタンスの監視、フォルトのリカバリ、アプリケーション・インスタンスの状態の管理、ポリシーのアタッチなどの管理タスクを実行できます。また、SOAコンポジット・アプリケーション・レベルで、コンポジット監査レベルやペイロード検証の指定など、一定数の構成タスクを実行することもできます。これらのタスクは、ページの上部にボタンとして表示されます。

図1-2 SOAコンポジット・アプリケーションのホーム・ページ(上部)

図1-2の説明が続きます
「図1-2 SOAコンポジット・アプリケーションのホーム・ページ(上部)」の説明

図1-3に、このSOAコンポジット・アプリケーションのホーム・ページの下部を示します。コンポジットに組み込まれているサービス・コンポーネント、およびサービス・バインディング・コンポーネントと参照バインディング・コンポーネントが表示されます。

図1-3 SOAコンポジット・アプリケーションのホーム・ページ(下部)

図1-3の説明が続きます
「図1-3 SOAコンポジット・アプリケーションのホーム・ページ(下部)」の説明

詳細は、次の各項を参照してください。

1.2.2 SOAコンポジット・アプリケーションの概要

図1-1の「デプロイ済コンポジット」ページに示されているようなSOAコンポジット・アプリケーションは、次のコンポーネントで構成されます。

  • サービス・コンポーネント。ルーティングのためのOracle Mediator、オーケストレーションのためのBPELプロセス、オーケストレーションのためのBPMNプロセス(Oracle BPM Suiteがインストールされている場合)、ワークフロー承認のためのヒューマン・タスク、SOAコンポジット・アプリケーションにJavaインタフェースを統合するためのSpring、ビジネス・ルールを使用するためのデシジョン・サービスなどがあります。

  • 外部のサービス、アプリケーションおよびテクノロジに対してSOAコンポジット・アプリケーションを接続するバインディング・コンポーネント(サービスと参照)

これらのコンポーネントが、1つのSOAコンポジット・アプリケーションに組み込まれています。コンポーネントを単一のデプロイメント単位(アプリケーション)に組み込むことで、SOAアプリケーションの管理とライフサイクルが大幅に簡素化されます。

図1-4に、Oracle JDeveloperのSOAコンポジット・エディタに表示されたSOAコンポジット・アプリケーションの例を示します。サービス・バインディング・コンポーネント(orderprocessor_client_epなど)によって、その機能が外部コンシューマに通知されます。サービスは、BPELプロセス、Oracle Mediator、ヒューマン・タスクおよびデシジョン・サービスの各コンポーネントで構成されるSOAコンポジット・アプリケーション(OrderBookingComposite)のパブリック・インタフェースを公開します。サービスは、ワイヤでコンポジット内の特定のコンポーネントまたは参照に接続されます。参照バインディング・コンポーネント(CreditCardAuthorizationServicePartnerSupplierServiceなど)を使用すると、SOAコンポジット・アプリケーションから外部サービスにメッセージを送信できます。サービス・バインディング・コンポーネント、サービス・コンポーネントおよび参照バインディング・コンポーネントは、通信するために連結(接続)されます。

図1-4 SOAコンポジット・アプリケーション

図1-4の説明が続きます
「図1-4 SOAコンポジット・アプリケーション」の説明

SOAコンポジット・アプリケーションに組み込まれているサービス・コンポーネントとバインディング・コンポーネントは、図1-3および図1-5に示すように、アプリケーションのホーム・ページの下部に表示されます。図1-5の例は、「コンポーネント・メトリック」セクションの2つのサービス・コンポーネントと「サービスと参照」セクションの3つのバインディング・コンポーネントを示しています。特定のサービス・コンポーネントまたはバインディング・コンポーネントをクリックすると、そのホーム・ページにアクセスできます。

図1-5 SOAコンポジット・アプリケーションのサービス・コンポーネントおよびバインディング・コンポーネント

図1-5の説明が続きます
「図1-5 SOAコンポジット・アプリケーションのサービス・コンポーネントおよびバインディング・コンポーネント」の説明

詳細は、次のドキュメントを参照してください。

1.2.3 SOAコンポジット・アプリケーション・インスタンスの概要

SOAコンポジット・アプリケーションを起動すると、新規コンポジット・インスタンスが作成されます。このインスタンスは、一意のインスタンスIDで識別されます。このIDは、Oracle Enterprise Manager Fusion Middleware Controlの各ページに表示されます。たとえば、図1-6では、SOAインフラストラクチャの「インスタンス」ページに、SOAコンポジット・アプリケーション用のインスタンスIDが表示されています。これらのIDをクリックすると、SOAコンポジット・アプリケーション・インスタンスの状態に関するより具体的な詳細にアクセスできます。「インスタンス」ページから、SOAコンポジット・アプリケーション・インスタンスの状態を監視することもできます。

「テスト実行」ページからユニット・テストとして作成したインスタンスは、「Webサービスのテスト」ページから自動的にまたは手動で作成されたインスタンスとは小さい黄色のボックスで区別されます。図1-6に示すように、このボックスはインスタンスIDの左側に表示されます。このボックスは、SOAインフラストラクチャおよびSOAコンポジット・アプリケーションの「インスタンス」ページおよび「ダッシュボード」ページの「最新のインスタンス」表の両方に表示されます。

一部のSOAコンポジット・アプリケーションに対しては、対話IDも生成されます。対話IDは、生成された一連のインスタンスを明確に識別する別の方法を提供します。図1-6に示すように、対話IDはすべてのインスタンスに対して自動的に表示されるわけではありません。生成された対話IDを参照するには、次のいずれかのタスクを実行します。

  • プログラムでサービスを起動し、WS-Addressingヘッダー(messageId)を介して一意のIDを渡します。

  • 「Webサービスのテスト」ページを使用してインスタンスを作成します。ただし、「Webサービスのテスト」ページの「追加テスト・オプション」セクションにある「ストレス・テストの有効化」チェック・ボックスが選択されている場合を除きます。この場合、インスタンスの対話IDは作成されません。

図1-6 SOAコンポジット・アプリケーション・インスタンスID

図1-6の説明が続きます
「図1-6 SOAコンポジット・アプリケーション・インスタンスID」の説明

詳細は、次の各項を参照してください。

1.2.4 サービス・コンポーネントとサービス・コンポーネント・インスタンスの概要

SOAコンポジット・アプリケーションには、複数のサービス・コンポーネントが含まれています。サービス・コンポーネントは、SOAコンポジット・アプリケーションの基礎単位です。サービス・コンポーネントによって、SOAコンポジット・アプリケーションの全体的なビジネス・ロジックの一部が実装されます。

SOAコンポジット・アプリケーションで使用できるサービス・コンポーネントは、次のとおりです。

  • BPELプロセス: 同期プロセスと非同期プロセスのオーケストレーションに使用します。

  • BPMNプロセス(Oracle BPM Suiteがインストールされている場合): Business Process Management Notation and Modeling(BPMN)を使用したビジネス・プロセスの作成およびモデルリングに使用します。

  • Oracle Mediator: サービスの生産者とコンシューマ間のコンテンツ変換およびイベント(メッセージ)のルーティングに使用します。

  • ヒューマン・タスク: ユーザーまたはグループが、エンドツーエンドのビジネス・プロセス・フローの一環として実行するタスクを記述するヒューマン・タスク(例: 手動による注文の承認)のモデリングのために使用します。

  • Spring: SOAコンポジット・アプリケーションへのJavaインタフェースの統合に使用します。

  • デシジョン・サービス: 意思決定またはビジネス・ルールに基づく処理に使用します。

Oracle Enterprise Manager Fusion Middleware Controlのサービス・コンポーネントのホーム・ページからは、インスタンスの監視、フォルトのリカバリ、ポリシーのアタッチなどの管理タスクを実行できます。

第1.2.3項「SOAコンポジット・アプリケーション・インスタンスの概要」で説明したように、各アプリケーション・インスタンスには独自のインスタンスIDがあります。SOAコンポジット・アプリケーション・インスタンスに組み込まれている各サービス・コンポーネント・インスタンスにも独自のインスタンスIDがあり、Oracle Enterprise Manager Fusion Middleware Controlに表示されます。図1-7では、「インスタンスID」列に、VacationRequest SOAコンポジット・アプリケーションのVacationRequestTaskヒューマン・タスク・サービス・コンポーネント用のインスタンスID (workflow:200000)が表示されています。「インスタンス」ページから、そのサービス・コンポーネント・インスタンスの状態を監視できます。このインスタンスをクリックすると、サービス・コンポーネントに関するより具体的な詳細にアクセスすることもできます。

図1-7 サービス・コンポーネント・インスタンスID

図1-7の説明が続きます
「図1-7 サービス・コンポーネント・インスタンスID」の説明


注意:

Oracle SOA SuiteはSpringサービス・コンポーネントをサポートするようになりました。Oracle Enterprise Manager Fusion Middleware ControlでのSpringのサポートについては、次の詳細を確認してください。
  • Springサービス・エンジン管理ページはありません。

  • Springコンポーネントはフローのトレースに表示されますが、監査証跡はありません。

  • Springコンポジット・メトリックはコンポジット・アプリケーションのホーム・ページ(たとえば、「ダッシュボード」ページの「コンポーネント・メトリック」セクション)に表示されます。


サービス・コンポーネントの管理の詳細は、次の各項を参照してください。

1.2.5 バインディング・コンポーネントの概要

SOAコンポジット・アプリケーションは、バインディング・コンポーネントによって、外部のサービス、アプリケーションおよびテクノロジ(メッセージング・システムやデータベースなど)に接続されます。バインディング・コンポーネントは、次の2つのグループに編成されます。

  • サービス: SOAコンポジット・アプリケーションへのエントリ・ポイントを外部に提供します。サービスのWSDLファイルによって、そのサービスの機能が外部のアプリケーションに通知されます。サービスのバインディングでは、SOAコンポジット・サービスをどのように呼び出すことができるか(例: SOAP経由で)が定義されます。

  • 参照: SOAコンポジット・アプリケーションから外部のサービスにメッセージを送信できます(たとえば、パートナ・リンクがBPELプロセスに対して提供するものと同じ機能であっても、より高度なSOAコンポジット・アプリケーション・レベルで提供されます)。

Oracle Enterprise Manager Fusion Middleware Controlでは、ポリシーのアタッチ、拒否メッセージの監視、バインディング・コンポーネント・プロパティの設定などのバインディング・コンポーネント管理タスクを実行できます。図1-8に、サービス・バインディング・コンポーネント(この例ではJCAアダプタ)のホーム・ページを示します。

図1-8 バインディング・コンポーネント

図1-8の説明が続きます
「図1-8 バインディング・コンポーネント」の説明

詳細は、第32項「バインディング・コンポーネントの管理」を参照してください。

1.2.6 サービス・エンジンの概要

SOAインフラストラクチャには、一連のサービス・エンジン(BPELプロセス、ヒューマン・ワークフロー、デシジョン・サービス、Oracle MediatorおよびSpring)が組み込まれており、これらは、SOAコンポジット・アプリケーション(例: BPELプロセス)内でそれぞれのコンポーネントのビジネス・ロジックを実行します。Oracle BPM Suiteがインストールされている場合、SOAインフラストラクチャにはBPMNプロセス・サービス・エンジンも含まれます。

図1-9に、BPELプロセス・サービス・エンジンのOracle Enterprise Manager Fusion Middleware Controlの例を示します。このサービス・エンジンでは、CallingLoanServiceおよびCreditRatingServiceというBPELプロセス・サービス・コンポーネントが実行されています。LoanServiceおよびCreditRatingServiceに対して複数のインスタンスIDがあることに注意してください。BPELプロセス・サービス・コンポーネントは、2つの別々のSOAコンポジット・アプリケーションに組み込まれています。

  • Callingは、Calling SOAコンポジット・アプリケーションに組み込まれています。

  • LoanServiceおよびCreditRatingServiceは、CompositeTest SOAコンポジット・アプリケーションに組み込まれています。

ただし、各BPELプロセス・サービス・コンポーネントは、同じBPELプロセス・サービス・エンジンで実行されます。ページ上のリンクをクリックすると、各BPELプロセス・サービス・コンポーネント・インスタンス、サービス・コンポーネント自体、または組み込まれているSOAコンポジット・アプリケーションに関する詳細を参照できます。

図1-9 サービス・エンジンで実行中のサービス・コンポーネント

図1-9の説明が続きます
「図1-9 サービス・エンジンで実行中のサービス・コンポーネント」の説明

Oracle Enterprise Manager Fusion Middleware Controlでは、インスタンスの監視、フォルトのリカバリ、失敗したメッセージの手動リカバリ(BPEL)、サービス・エンジン固有のプロパティの構成などのサービス・エンジン管理タスクを実行できます。これらの構成プロパティは、サービス・コンポーネントが組み込まれているSOAコンポジット・アプリケーションに関係なく、サービス・エンジンで実行されるすべてのサービス・コンポーネントに影響を与えます。サービス・エンジンのページには、サービス・エンジン固有の統計およびパフォーマンス・メトリックも表示されます。

サービス・エンジンの管理の詳細は、次の各項を参照してください。


注意:

Oracle Enterprise Manager Fusion Middleware Controlには、Springサービス・エンジンを管理するためのページは含まれていません。

1.2.7 サービス・インフラストラクチャの概要

サービス・インフラストラクチャは、内部メッセージ転送インフラストラクチャ機能を提供して複数のコンポーネントを接続し、データ・フローを有効にします。サービス・インフラストラクチャには、サービス、サービス・コンポーネントおよび参照間のワイヤ接続に従ってメッセージをルーティングする役割があります。

詳細は、次の各項を参照してください。

1.2.8 SOAコンポジット・アプリケーションのコンテンツの概要

SOAコンポジット・アプリケーションは、様々なサービス・コンポーネント、バインディング・コンポーネントおよびサービスで構成でき、これらはOracle Enterprise Manager Fusion Middleware Controlから管理します。

  • BPELプロセス

  • BPMNプロセス(Oracle BPM Suiteがインストールされている場合)

  • ヒューマン・ワークフロー

  • Oracle Mediator

  • デシジョン・サービス(Oracle Business Rules)

  • Spring

  • JCAアダプタ

  • HTTPバインディング

  • EJBサービス

  • 直接バインディング・サービス

  • Oracle Application Development Framework (ADF)ビジネス・コンポーネント・サービス

  • Oracle BAM

  • Oracle B2B

  • ビジネス・イベント

  • Oracle User Messaging Service

これらのサービス・コンポーネント、バインディング・コンポーネントおよびサービスの概要は、『Oracle Fusion Middleware Oracle SOA Suiteスタート・ガイド』および『Oracle Fusion Middleware Oracle SOA Suite開発者ガイド』を参照してください。

1.3 Oracle Business Process Management Suiteの概要

Oracle BPM Suiteでは、ビジネス・プロセスを中心とするビジネス・アプリケーションを開発、管理および使用するための統合環境が提供されます。

Oracle BPM Suiteの機能は、次のとおりです。

Oracle BPM Suiteは、設計時や実装からランタイムやアプリケーション管理まで、アプリケーション開発ライフサイクルのすべてのステージをシームレスに統合します。

Oracle BPM Suiteは、Oracle SOA Suite上に階層化され、次のような多くの同じ製品コンポーネントを共有します。

1.4 Oracle SOA SuiteおよびOracle BPM Suiteの管理

Oracle SOA SuiteおよびOracle BPM Suiteの様々な管理(構成、監視および管理)タスクは、Oracle Enterprise Manager Fusion Middleware Controlから実行できます。この項では、これらのタスクの概要を示します。

実行可能な管理タスクは、マップされているロールに基づきます。各ロールは、異なる一連の権限に対応しています。特定のユーザーを単一の監視権限(表示専用アクセスなど)にマップし、他のユーザーには、完全アクセス(構成の更新、サーバーの再起動などを実行できる権限)を付与できます。 Oracle Enterprise Manager Fusion Middleware Controlのロールの詳細は、付録C「Oracle Enterprise Managerのロール」を参照してください。


注意:

このガイドは、主にOracle SOA SuiteをOracle WebLogic Serverと使用する方法を説明していますが、ほとんどの情報はOracle SOA Suiteをサード・パーティのその他のアプリケーション・サーバーと使用する場合にも当てはまります。ただし、サード・パーティのアプリケーション・サーバーを使用する場合は、異なる部分がある可能性があります。

これらの相違点の詳細は、Oracle Fusion Middlewareサードパーティ・アプリケーション・サーバー・ガイドを参照してください。


1.4.1 Oracle SOA SuiteおよびOracle BPM Suiteの構成

Oracle SOA SuiteおよびOracle BPM Suiteの構成タスクは、Oracle Enterprise Manager Fusion Middleware Controlで実行できます。構成タスクでは、使用環境の監査レベルやペイロード検証などのプロパティを設定します。プロパティは次のレベルで設定できます。

  • SOAインフラストラクチャ(すべてのSOAコンポジット・アプリケーションに影響)

  • サービス・エンジン(サービス・コンポーネントが組み込まれているSOAコンポジット・アプリケーションに関係なく、サービス・エンジンで実行されるすべてのサービス・コンポーネントに影響)

  • SOAコンポジット・アプリケーション(そのコンポジット・アプリケーションに組み込まれているすべてのサービス・コンポーネントに影響)

  • Oracle B2Bバインディング

  • サービスおよび参照バインディング・コンポーネントのメッセージ・ヘッダー・プロパティ

優先順位としては、継承SOAコンポジット・アプリケーションのプロパティ設定(監査レベルの設定やペイロード検証)が最も優先され、次にサービス・エンジンの設定、SOAインフラストラクチャの設定の順に優先されます。ただし、ほとんどのプロパティでは、この種の優先度を考慮する必要はありません。

1.4.1.1 監査レベル設定の優先順位の概要

監査トラッキングでは、メッセージ・トラッキング・インフラストラクチャによって収集する情報のレベルを選択できます。監査レベル・トラッキングは、次のレベルで設定できます。

  • BPELプロセスまたはBPMNプロセス・サービス・コンポーネント

  • SOAコンポジット・アプリケーション

  • サービス・エンジン

  • SOAインフラストラクチャ

監査トラッキングを複数レベルで設定した場合は、どの設定が優先されるかを理解することが重要です。表1-1に、監査レベル設定の優先順位の例を示します。

表1-1 優先順位の例

コンポーネント コンポジット サービス・エンジン SOAインフラストラクチャ 優先される設定

プロパティなし

オフ

本番

開発

コンポジット。

監査レベルは「オフ」に設定されます。サービス・エンジンおよびSOAインフラストラクチャの監査レベルは無効になります。

プロパティなし

継承

開発

本番

サービス・エンジン。

監査レベルは「開発」に設定されます。assignアクティビティでペイロードが表示されます。SOAインフラストラクチャの監査レベルは無効になります。

プロパティなし

継承

継承

本番

SOAインフラストラクチャ。

監査レベルは「本番」に設定されます。

プロパティなし

継承

本番/開発/オフ/継承

オフ

全体的な監査は表示されません。

コンポジットはSOAインフラストラクチャの監査レベルを継承します。サービス・エンジンの監査レベル設定に基づいてペイロードがassignアクティビティで表示されます。

開発

オフ

本番

開発

コンポジット。

コンポジット監査レベルが「オフ」に設定されているため、全体的な監査は表示されません。サービス・エンジンの監査レベルが表示されますが、コンポーネントの「開発」設定が優先されます。

「開発」のコンポーネント監査レベル設定に基づいてペイロードがassignアクティビティで表示されます。

継承

オフ

本番

開発

コンポジット。

コンポジット監査レベルが「オフ」に設定されているため、全体的な監査は表示されません。コンポジットから「オフ」が継承されるため、サービス・エンジンの監査レベルは表示されません。



注意:

  • コンポジット監査レベルが「オフ」に設定されている場合、このコンポジットおよびコンポジット内で使用されているすべてのサービス・エンジンに対して監査証跡は生成されません。

  • コンポジット監査レベルが「継承」に設定されている場合は、常にSOAインフラストラクチャの設定を継承します。

  • コンポジット監査レベルが「オフ」に設定されている場合、コンポーネントはサービス・エンジンの設定を継承します。


詳細は、次の各項を参照してください。

1.4.2 Oracle SOA SuiteおよびOracle BPM Suiteの監視

Oracle SOA SuiteおよびOracle BPM Suiteの監視タスクは、Oracle Enterprise Manager Fusion Middleware Controlで実行できます。次のような項目を監視できます。

  • SOAインフラストラクチャ、SOAコンポジット・アプリケーション、サービス・コンポーネント、サービス・エンジン、サービス・バインディング・コンポーネントおよび参照バインディング・コンポーネントのインスタンス、フォルトおよび拒否メッセージ

  • サービス・エンジン、サービス・インフラストラクチャ、およびバインディング・コンポーネントのリクエスト処理パフォーマンス

  • サービスおよび参照バインディング・コンポーネントのメッセージ処理に要する合計処理時間と平均処理時間

  • サービス・コンポーネントにおける監査証跡およびプロセス・フローの動作。BPMNプロセスの場合は、BPMNプロセス・フロー全体が表示され、プロセス・インスタンスがとるパスが強調表示されます。

  • BPELプロセス、BPMNプロセスおよびヒューマン・ワークフローにおけるサービス・エンジンのリクエストおよびスレッドの状態

1.4.3 Oracle SOA SuiteおよびOracle BPM Suiteの管理

Oracle SOA SuiteおよびOracle BPM Suiteの管理タスクは、Oracle Enterprise Manager Fusion Middleware Controlで実行できます。次のような項目を管理できます。

  • パーティションの作成と削除。パーティションの作成後、コンポジットを適切なパーティションにデプロイできます。このアクションにより、SOAコンポジット・アプリケーションをパーティションに論理的にグループ化できます。このことは、Oracle BPEL Process Managerの10.1.xリリースのドメインの概念に似ています。

  • コンポジットの状態(アクティブ化、リタイア、起動、停止およびデフォルト・コンポジット・バージョンの設定)

  • コンポジット・インスタンスの削除と終了

  • SOAコンポジット・アプリケーションのデプロイメント、アンデプロイメントおよび再デプロイメント・アクション

  • 実行中のSOAコンポジット・アプリケーションのJARファイルへのエクスポート。

  • SOAコンポジット・アプリケーション・テスト・インスタンスの「Webサービスのテスト」ページからの手動による起動

  • SOAコンポジット・アプリケーション、サービス・コンポーネント、サービス・エンジンおよびビジネス・イベントのフォルトのリカバリ

  • BPELプロセスで失敗したメッセージの手動リカバリ

  • SOAコンポジット・アプリケーションの自動ユニット・テスト

  • SOAコンポジット・アプリケーション、サービス・コンポーネントおよびバインディング・コンポーネントへのポリシーのアタッチメント

  • ヒューマン・ワークフローの受信および送信通知メッセージ

  • ビジネス・イベントのサブスクリプションおよびイベント公開のテスト

  • Universal Description, Discovery, and Integration(UDDI)レジストリへのWebサービスの公開

  • ビジネス監視の無効化(BPELセンサー、BPELモニターおよびBPMN測定)

以降の各項では、いくつかの管理タスクについてより具体的な概要を示します。


注意:

Oracle SOA Suiteのバックアップおよびリカバリについては、Oracle Fusion Middlewareの管理者ガイドを参照してください。

1.4.3.1 フォルト・リカバリの概要

Oracle Enterprise Manager Fusion Middleware Controlでリカバリ可能として識別されたBPELプロセス、BPMNプロセス、Oracle Mediator、ヒューマン・ワークフローおよびビジネス・イベント・サブスクリプションのフォルト(データベースおよびコンポーネント・サブスクリプションのフォルトを含む)に対しては、フォルト・リカバリ・アクションを実行できます。次のタイプのフォルト・リカバリがサポートされています。

  • 個々のフォルトのリカバリ。この場合は、各フォルト・タイプに固有の最も詳細なリカバリ・オプションにアクセスできます。

  • 複数(一括)フォルトのリカバリ。この場合は、リカバリに対して複数のフォルトを選択します。

リカバリ可能なフォルトに対しては、個別および一括リカバリ・アクションを次のレベルで実行できます。

  • SOAインフラストラクチャのすべてのSOAコンポジット・アプリケーションで発生したフォルト

  • 個々のSOAコンポジット・アプリケーションで発生したフォルト

  • サービス・コンポーネントで発生したフォルト

  • サービス・エンジンで発生したフォルト

  • ビジネス・イベントで発生したフォルト

Oracle Enterprise Manager Fusion Middleware Controlでリカバリ可能として識別されたフォルトに対して、フォルト・リカバリを実行します。リカバリ可能として識別されたBPELプロセス・フォルトについては、(fault-bindings.xmlファイルを介して)フォルトにバインドされ、アクションora-human-interventionをトリガーするフォルト・ポリシーが定義されている必要があります。BPELコンポーネントのフォルトは、この場合のみリカバリ可能です。フォルト・ポリシーがコンポジットの一部として定義されていない場合、BPELプロセスのフォルトはリカバリできません。

フォルト・リカバリ・ポリシーは、Oracle Enterprise Manager Fusion Middleware Controlの外部のfault-policies.xmlおよびfault-bindings.xmlファイルに定義します。これらのファイルは、SOAインフラストラクチャにデプロイするSOAコンポジット・アプリケーションとパッケージ化され、Oracle Enterprise Manager Fusion Middleware Controlで管理されます。

Oracle Mediatorおよびヒューマン・ワークフローのフォルトの動作はこれとは異なります。これらは、フォルト・ポリシーなしでリカバリ可能なフォルトを作成できます。ヒューマン・タスク・サービス・コンポーネントまたはヒューマン・ワークフロー・サービス・エンジンのエラーの場合は、Oracle BPM Worklistからリカバリ可能として識別されたフォルトに対してフォルト・リカバリを実行します。

次のタイプのフォルトがOracle Enterprise Manager Fusion Middleware Controlに表示されます。

  • ビジネス: 処理対象の情報に問題がある場合に生成されるアプリケーション固有のフォルト(たとえば、社会保障番号がデータベースにない場合など)。

  • システム: ネットワーク・エラーまたは他のタイプのエラー(データベース・サーバーやWebサービスがアクセス不可の場合など)。

  • Oracle Web Service Manager(OWSM): SOAコンポジット・アプリケーション、サービス・コンポーネントまたはバインディング・コンポーネントにアタッチされたポリシーのエラー。ポリシーでは、メッセージ配信に対してセキュリティが適用されます。

フォルトは次のいずれかに分類することもできます。

  • リカバリ可能またはリカバリ不可:

    特定のタイプのフォルトのみがリカバリ可能として識別されます。表1-2に、リカバリ可能なフォルトとリカバリ不可のフォルトの例をいくつか示します。

  • 拒否メッセージ:

    フォルトは、その発生時期に基づいて拒否メッセージとして分類されます。フォルトの発生がSOAコンポジットの入力前で、コンポジット・インスタンスが生成されていない場合は、拒否メッセージとして分類されます。システム・フォルトまたはポリシー・フォルトは拒否メッセージとして分類されます。

表1-2 フォルト

リカバリ可能なフォルト リカバリ不可のフォルト
  • ビジネス・フォルトおよび一部の特定のシステム・フォルト

  • Oracle Mediator入力ファイルのパスと出力ディレクトリの不一致

  • Oracle BPM Worklistユーザーに関連(予想)アクションの実行権限がない場合

  • 拒否メッセージ

  • ほとんどのシステム・フォルト

  • 存在しない参照

  • サービス起動の失敗

  • ポリシーのフォルト


フォルト・リカバリの実行の詳細は、次の各項を参照してください。

1.4.3.2 ポリシーの概要

Oracle Enterprise Manager Fusion Middleware Controlでは、ポリシーを次のレベルでアタッチおよびデタッチできます。

  • SOAコンポジット・アプリケーション

  • サービス・コンポーネント

  • サービス・バインディング・コンポーネントおよび参照バインディング・コンポーネント

ポリシーでは、メッセージ配信に対してセキュリティが適用されます。Oracle Fusion Middlewareでは、ポリシー・ベースのモデルを使用してWebサービスを管理します。次のタイプのポリシーがサポートされています。

  • セキュリティ: WS-Security 1.0および1.1の標準を実装します。これらの標準によって、ユーザーの認証と認可、アイデンティティ伝播およびメッセージ保護(メッセージ整合性およびメッセージ機密性)が実施されます。

  • 信頼できるメッセージング: WS-ReliableMessagingプロトコルをサポートして、エンドツーエンドのメッセージ配信を保証します。

  • メッセージ転送最適化メカニズム(MTOM): 添付がMTOMフォーマットであることを保証します。このフォーマットは、Webサービスとの間でバイナリ・データを効率的に送受信するためのフォーマットです。

  • WSアドレス: WSアドレス仕様に準拠したWS-AddressingヘッダーがSOAPメッセージに含まれていることを検証します。トランスポート・レベルのデータはXMLメッセージに含まれており、ネットワーク・レベルのトランスポートに依存せずに情報を伝達します。

  • 管理: リクエスト、レスポンスおよびフォルト・メッセージをメッセージ・ログに記録します。管理ポリシーにはカスタム・ポリシーを含めることもできます。

ポリシーは、企業のポリシー・フレームワークの一部であり、このフレームワークによってポリシーを集中的に作成して管理できます。

詳細は、次のドキュメントを参照してください。

1.4.3.2.1 ポリシーの実行方法の概要

ポリシーは、ポリシーがアタッチされているコンポーネントにメッセージが到達するに実行されます。この結果、エラーは、ポリシーがアタッチされているコンポーネントの直前のコンポーネントに表示されます。次に例を示します。

  • Oracle Mediatorサービス・コンポーネントにアタッチされたポリシーは、メッセージがOracle Mediatorに渡される前にワイヤで実行されます。この結果、フォルトは、Oracle Mediatorではなくサービス・バインディング・コンポーネントに表示されます。

  • ヒューマン・タスク・サービス・コンポーネントにアタッチされたポリシーは、メッセージがヒューマン・タスク・サービス・コンポーネントに渡される前に、直前のBPELプロセス・サービス・コンポーネントで実行されます。この結果、フォルトは、ヒューマン・タスク・サービス・コンポーネントではなく、BPELプロセス・サービス・コンポーネントに表示されます。

  • ヒューマン・タスク・サービス・コンポーネントにアタッチされたポリシーは、メッセージがヒューマン・タスク・サービス・コンポーネントに渡される前に、ヒューマン・サービス・コンポーネントに関連付けられているヒューマン・ステップのBPMNプロセスの内部で実行されます。これにより、フォルトは、ヒューマン・タスク・サービス・コンポーネントではなく、BPMNプロセス・サービス・コンポーネントに表示されます。

ポリシー・エラーの正確な位置を確認するには、監査証跡を参照してください。

1.4.3.3 SOAコンポジット・アプリケーションのライフサイクルの状態の概要

デプロイ済SOAコンポジット・アプリケーションのライフサイクルの状態は、Oracle Enterprise Manager Fusion Middleware Controlから管理できます。アプリケーションは、SOAインフラストラクチャにデプロイすると自動的にアクティブ化されます。デプロイメント時には、アプリケーションに対して特定のリビジョン番号を指定できます。リビジョンは、アプリケーションの特定のデプロイ済バージョンです。アプリケーションの複数のリビジョンをデプロイし、すべてのリビジョンを同時に実行できます。

これは、リビジョンの重要な利点です。たとえば、古いリビジョンのアプリケーションがあり、引続き有効なある顧客で実行中であるとします。その後、別の顧客とのパートナーシップが開始され、この顧客については小規模なアプリケーションの設計変更が必要です。ある時点で古い顧客を新しいリビジョンのアプリケーションに移行する計画ですが、現時点では、移行の必要はありません。これは、リビジョンを使用すると、両方のアプリケーションを実行できるためです。

Oracle Enterprise Manager Fusion Middleware Controlでは、リビジョン値がアプリケーション名に付加されます。たとえば、図1-1で、リビジョン1.0は、多数のデプロイ済SOAコンポジット・アプリケーションに対するバージョンです。特定のコンポジット・アプリケーション・リビジョンに対する新規リクエストを受信すると、そのコンポジット・アプリケーション・リビジョンが起動します。リビジョンが指定されていない新規リクエストを受信すると、デフォルトのリビジョンが起動します。デフォルトのリビジョンは、小さい緑色の丸印で他のリビジョンと区別されます。

SOAコンポジット・アプリケーションに関する次のライフサイクル管理タスクは、Oracle Enterprise Manager Fusion Middleware Controlから実行できます。

  • インスタンスの作成。

  • アプリケーション・リビジョンの停止と再起動。アプリケーション・リビジョンは通常、デプロイメント後即時に起動されます。

  • アプリケーション・リビジョンのリタイアとアクティブ化。アプリケーション・リビジョンは、デプロイメント時に即時にアクティブ化されます。

  • デフォルト・バージョンとしてのアプリケーションの設定。

  • アプリケーション・リビジョンのデプロイ、アンデプロイおよび再デプロイ。

  • アプリケーション・リビジョンの特定インスタンスの削除。

ライフサイクル管理にOracle SOAガバナンス・ツールが追加されたため、SOAコンポジット・アプリケーション、またはコンポジット内の任意のコンポーネントまたはサービスに対して追加のライフサイクル管理タスクを実行できます。

  • Oracle Enterprise Repositoryで各コンポーネントの重要情報を収集して、プロデューサ、プロバイダ、コンシューマまたはその他のライフサイクル参加者の理解向上に役立てることができます。たとえば、前のバージョンと次のバージョンの関係を示すことができます。

  • ライフサイクルのステージ分類をコンポーネントまたはサービス・エンドポイント(ビルド、テスト、ステージまたは本番など)に関連付けます。

  • 様々なライフサイクル・ステージを経由して自動的に進み、コンポーネントとサービス・エンドポイントを追跡し、それらのライフサイクル・ステージの適切なUDDIサービス・レジストリに対して、ライフサイクル・ステージを自動的に公開します。

  • 反復可能なプロセスを使用して、ライフサイクルおよび関連する承認を管理します。

  • 本番でパフォーマンスを管理し、設計時により適切な意思決定を行うためにサービスのコンシューマに通知します。

SOA Governance Suiteは、アプリケーションとそのコンポーネントの完全なライフサイクル(たとえば、計画、設計、実装、テスト、ステージング、本番、変更およびリタイア)を指定および自動化するオプションを、Oracle SOA SuiteおよびOracle BPM Suiteのユーザーに提供します。

SOAコンポジット・アプリケーションのライフサイクルの状態の管理およびSOAガバナンスについては、次の各項を参照してください。

1.4.3.4 SOAコンポジット・アプリケーションの自動テストの概要

SOAコンポジット・アプリケーションのテストを自動化するテスト・ケースを作成、デプロイおよび実行できます。テスト・ケースを使用すると、SOAコンポジット・アプリケーションとその参照の間の相互作用を、本番環境へのデプロイメント前にシミュレートできます。 テスト・スイートは、1つ以上のテスト・ケースの論理的な集合で構成されます。各テスト・ケースには、テスト・インスタンスの実行時に実行される一連のコマンドが含まれています。テスト・スイートの実行は、テスト実行と呼ばれます。各テストは、単一のSOAコンポジット・アプリケーション・インスタンスに対応しています。図1-6に示すように、これらのテストの実行で生成されたインスタンスは、そのインスタンスIDの横に小さい黄色のボックスが表示され、テスト・インスタンスとして区別されます。

テスト・スイート・フレームワークの機能は、次のとおりです。

  • SOAコンポジット・アプリケーションが実行時に相互作用するコンポーネントの動作を、エミュレーションを使用してシミュレートします。特定のコンポーネントを起動せずに、コンポーネントからのレスポンスを指定できます。

  • アサーションを使用し、プロセス実行時にデータを検証します。

SOAコンポジット・アプリケーションのテスト・ケースの設計に関する詳細は、『Oracle Fusion Middleware Oracle SOA Suite開発者ガイド』を参照してください。

1.4.3.5 SOAインフラストラクチャのパーティションの概要

パーティションと呼ばれるSOAインフラストラクチャの個別のセクションに、SOAコンポジット・アプリケーションをデプロイできます。パーティションにデプロイすると、SOAコンポジットを論理的にグループ化し、大量のコンポジット・アプリケーションに対して一括ライフサイクル管理タスクを実行できます。パーティションは、Oracle BPEL Process Managerの10.1.xリリースのドメインの概念に似ています。ただし、特定のパーティションへのログイン・アクセスの制限やパーティションの構成(たとえばスレッドの構成)などの、パーティションに対する特定の構成タスクを実行できないことに注意してください。

SOAコンポジット・アプリケーションをデプロイするには、パーティションが少なくとも1つ必要です。「デフォルト」という名前のデフォルトのパーティションが、Oracle SOA Suiteに自動的に作成されます。

パーティションの作成後に、次のタスクを実行できます。

  • Oracle Enterprise Manager Fusion Middleware Control、Oracle JDeveloper、WebLogic Scripting Tool(WLST)コマンドまたはantコマンドを使用してSOAコンポジット・アプリケーションをパーティションにデプロイします。

  • ナビゲーション・ツリーを使用して、パーティションおよびデプロイされたコンポジットにアクセスします。

  • 特定のパーティション内のコンポジットに対して次の一括ライフサイクル管理タスクを実行します。

    • すべてのコンポジットの起動

    • すべてのコンポジットのシャットダウン

    • すべてのコンポジットのアンデプロイ

    • すべてのコンポジットのリタイア

    • すべてのコンポジットのアクティブ化

    • すべてのコンポジットのリスト


注意:

パーティションは、特定の状態(起動、停止、アクティブ化、リタイアなど)に関連付けられません。パーティション内のコンポジットのみが、特定の状態に関連付けられます。このため、パーティションを起動、停止、アクティブ化またはリタイアさせることはできません

詳細は、第8.10項「SOAコンポジット・アプリケーションのパーティションへのグループ化」を参照してください。

1.5 アプリケーション開発者による管理

ロールがアプリケーション開発者の場合は、Oracle JDeveloperおよびFusion Middleware Controlを組み合せて使用してSOAコンポジットを管理およびテストします。Oracle JDeveloperでSOAコンポジット・アプリケーションを開発するには『Oracle Fusion Middleware Oracle SOA Suite開発者ガイド』を参照し、Oracle Enterprise Manager Fusion Middleware Controlでコンポジット・アプリケーションのテスト・インスタンスをデプロイ、監視および開始するには次の項を参照してください。

Oracle Business Process Management内でBusiness Process Management Notation and Modeling(BPMN)を使用してビジネス・プロセスを作成およびモデリングするには、『Oracle Fusion Middleware Oracle Business Process Managementモデリングおよび実装ガイド』を参照してください。