11 SOAコンポジット・アプリケーションのデプロイおよび管理
この章の内容は次のとおりです。
詳細は、次のドキュメントを参照してください。
-
SOAコンポジット・アプリケーション・アーカイブと、テスト、開発および本番の各環境で使用するURLとプロパティ値を定義する構成プランの作成方法は、『Oracle SOAスイートでのSOAアプリケーションの開発』を参照してください。
-
ant
スクリプトを使用したデプロイは、『Oracle SOAスイートでのSOAアプリケーションの開発』を参照してください。 -
Oracle WebLogic Scripting Tool (WLST)を使用したデプロイの詳細は、『SOA Suite WLSTコマンド・リファレンス』を参照してください
ノート:
Oracle Enterprise Manager Fusion Middleware Controlがシングル・サインオン(SSO)対応の環境で実行されている場合は、SOAコンポジットのデプロイ、SOAコンポジットのアンデプロイおよびSOAコンポジットの再デプロイの各ウィザードの最後のステップの一部として、ユーザー名およびパスワード資格証明の入力を再度求められます。この情報は、Oracle Enterprise Manager Fusion Middleware Controlセッションごとに1回のみ要求されます。
SOAコンポジット・アプリケーションのデプロイ
SOAコンポジット・アプリケーションは、SOAコンポジットのデプロイ・ウィザードを使用して、Oracle Enterprise Manager Fusion Middleware Controlからデプロイできます。最初に、デプロイ可能なアーカイブをOracle JDeveloperで作成するか、ant
やWLSTコマンドライン・ツールを使用して作成する必要があります。「SOAコンポジットのデプロイ」ウィザードで、次のいずれかをデプロイします。
-
最初の新規SOAコンポジット・アプリケーション。
-
旧リビジョン(1.0など)と新リビジョン(2.0など)。旧リビジョンへの影響はありません。最後にデプロイされたリビジョンが、そのコンポジットの新しいデフォルト・リビジョンになります(デプロイメントのこの後のステップで他のリビジョンを指定しない場合にかぎります)。
-
共有データJARファイルおよび異なるリビジョン(たとえば、1.0)が現在デプロイされているSOAコンポジット・アプリケーションの複数のリビジョン(たとえば、2.0、3.0および4.0)を含むSOAバンドル(ZIPファイル)。このオプションでは、リビジョン1.0、2.0、3.0および4.0をまとめてデプロイできます。SOAバンドルをデプロイすると、すべての共有メタデータJARファイルが最初にデプロイされ、その後コンポジットSARファイルがランダムにデプロイされます。
バンドルには、異なるコンポジットのリビジョンを含めることもできます。すべてのリビジョンが同じコンポジット・アプリケーションのリビジョンである必要はありません。ただし、同じバンドル内にコンポジット間の相互参照は存在できません。たとえば、コンポジットAのリビジョン1.0はコンポジットBのリビジョン1.0を参照できません。
デプロイメントによって、SOAインフラストラクチャのコンポジット・アプリケーションが抽出されてアクティブ化されます。アプリケーションをデプロイした後は、インスタンスの作成、プロパティの構成、パフォーマンスの監視、インスタンスの管理、ポリシーとフォルトの管理などの管理タスクを実行できます。
ノート:
-
アプリケーションの既存のリビジョンを再デプロイする場合は、このウィザードを使用しないでください。かわりに「SOAコンポジットの再デプロイ」ウィザードを使用してください。
-
ユーザー
OracleSystemUser
は削除しないでください。SOAコンポジット・アプリケーションのデプロイメントなど、Oracle SOA Suiteが正常に機能するには、このユーザーが必要です。
SOAコンポジット・アプリケーションをデプロイするには:
-
次のいずれかのオプションを使用して、「SOAコンポジットのデプロイ」ウィザードにアクセスします。
SOAインフラストラクチャのメニューから... ナビゲータのSOAフォルダから... 「SOAインフラストラクチャ・ホーム」ページから... SOAコンポジットのメニューから... -
「SOAデプロイ」→「デプロイ」を選択します。
-
「soa-infra」を右クリックします。
-
「SOAデプロイ」→「デプロイ」を選択します。
-
「デプロイ済コンポジット」タブをクリックします。
-
「コンポジット」表の上にある「デプロイ」をクリックします。
-
「SOAデプロイ」→「別のコンポジットをデプロイ」を選択します。
ノート:
また、次の方法を使用しても、「SOAコンポジットのデプロイ」ウィザードにアクセスできます。
-
「SOAフォルダの管理」ページまたは特定のSOAフォルダのホーム・ページの「デプロイメント」ドロップダウン・リストから「このフォルダにデプロイ」を選択します
-
特定のSOAフォルダのホーム・ページ上部にある「SOAフォルダ」メニューから
-
ナビゲータで特定のSOAフォルダを右クリック
「アーカイブの選択」ページが表示されます。
-
-
「アーカイブまたは展開済ディレクトリ」セクションで、デプロイするSOAコンポジット・アプリケーションのアーカイブを指定します。アーカイブには、デプロイするコンポジットのプロジェクト・ファイルが格納されています(たとえば、単一アーカイブのHelloWorld_rev1.0.jar、または複数アーカイブのOrderBooking_rev1.0.zip)。この情報は必須です。
-
「構成プラン」セクションで、アーカイブに含める構成プランを指定します(オプション)。構成プランを使用して、異なる環境で使用するURLおよびプロパティ値を定義できます。構成プランは、プロセスのデプロイメント時に、プロジェクトを別のターゲット環境に適合させるために置換する必要のある値に関するSOAプロジェクトを検索する際に使用されます。
-
「次へ」をクリックします。
「ターゲットの選択」ページが表示されます。
このページには、SOAコンポジット・アプリケーション・アーカイブをデプロイする先のOracle SOA Suite管理対象サーバーまたはクラスタがリストされます。
-
このSOAコンポジット・アプリケーションをデプロイするSOAフォルダを選択します。
SOAフォルダによって、SOAコンポジット・アプリケーションを個別のセクションに論理的にグループ化できます。使用できるSOAフォルダが1つしかない場合でも、そのフォルダを明示的に選択する必要があります。デプロイした後は、コンポジットを異なるSOAフォルダに転送できなくなります。
存在しないSOAフォルダにSOAコンポジット・アプリケーションをデプロイする場合は、ウィザードを終了し、コンポジットをデプロイする前にSOAフォルダを作成します。「SOAインフラストラクチャ」メニューからアクセスできる「SOAフォルダの管理」ページでSOAフォルダを作成します。
サーバーにSOAフォルダが含まれていない場合は、そのサーバーにコンポジット・アプリケーションをデプロイできません。また、サーバーが実行中の状態でない場合も、このアーカイブはデプロイできません。デフォルトでは、defaultというSOAフォルダがOracle SOA Suiteで自動的に組み込まれます。デフォルトのSOAフォルダは削除できます。
ノート:
タスク・マップ属性(以前のフレックス・フィールド・マッピング)およびルール(例: 休暇ルール)などのヒューマン・ワークフロー・アーティファクトは、タスク定義のネームスペースに基づいて定義されます。このため、ヒューマン・ワークフロー・タスクを持つSOAコンポジット・アプリケーションが複数のSOAフォルダにデプロイされると、次の問題が発生します:
-
同じタスク定義タイプの場合、あるSOAフォルダで定義されたマップ済属性は、別のSOAフォルダに表示されます。
-
あるSOAフォルダのタスク定義に定義されているルールは、別のSOAフォルダの同じ定義に適用できます。
「SOAフォルダの管理」ページまたは特定のSOAフォルダのホーム・ページの「デプロイメント」ドロップダウン・リストから「このSOAフォルダにデプロイ」を選択してSOAコンポジットのデプロイ・ウィザードを起動する場合は、デプロイ先のフォルダが選択されています。したがって、「ターゲットの選択」ページはスキップされます。
-
-
「次へ」をクリックします。
「確認」ページが表示されます。
-
選択内容を確認します。
SOAコンポジット・アプリケーションでグローバル・トークン変数を使用している場合は、システムの
mdm-url-resolver.xml
ファイルですべてのトークンが構成済であることを確認するよう求める警告メッセージが表示されます。トークンがシステムで構成されていない場合、または場所が不適切な場合(たとえば、composite.xml
ファイルのimport
セクション)、SOAコンポジット・アプリケーションはデプロイされず、エラー・メッセージが表示されます。グローバル・トークン変数の管理の詳細は、「複数のSOAコンポジット・アプリケーションのグローバル・トークン変数の管理」を参照してください。 -
SOAコンポジット・アプリケーションをデフォルトのリビジョンとしてデプロイするかどうかを選択します。デフォルトのリビジョンは、新しいリクエストを受信するとインスタンス化されます。
-
「デプロイ」をクリックします。
処理メッセージが表示されます。
この時点では、デプロイメント操作を取り消すことができません。ブラウザ・ページを閉じてもデプロイメントは続行されます。
-
デプロイメントが完了すると、新規にデプロイしたコンポジット・リビジョンのホーム・ページが自動的に表示されます。ページの上部に、コンポジットが正常にデプロイされたことを示す確認メッセージが表示されます。バンドルのデプロイメントの場合は、SOAインフラストラクチャの「デプロイ済コンポジット」ページが表示されます。
構成プランの作成およびOracle JDeveloperからのアプリケーションのデプロイの詳細は、『Oracle SOA SuiteでのSOAアプリケーションの開発』を参照してください。
その他のデプロイ動作のシナリオの理解
この項では、その他のデプロイ動作のシナリオについて説明します。
複数のADFタスク・フォーム・デプロイメントのPermGenメモリー要件
ADFタスク・フォームのデプロイメントごとに、SOAおよびBPMサーバーのメモリー消費量は増加します。
本番環境でOracle JDKを使用する必要があるときに複数のタスク・フォームをデプロイしてjava.lang.OutOfMemoryError:
PermGen
space
エラーが発生した場合は、$Domain/bin/setSOADomainEnv.sh
ファイルのPermGen
メモリー(UNIX)、またはDOMAIN_HOME
\bin\setSOADomainEnv.cmd
ファイル (Windows)を環境に適した値に更新します。
タスク・フローを持つSOAコンポジット・アプリケーションのデプロイ
タスク・フローのEnterprise Resource Archive (EAR)ファイルを持つSOAコンポジット・アプリケーションを、Oracle Enterprise Manager Fusion Middleware ControlまたはOracle WebLogic Server管理コンソールから複数パーティションの環境にデプロイする場合は、パーティションの詳細を指定できません。パーティションを指定するには、生成されるEARファイル(ファイルのプロジェクト・バージョンが変更されません)にパーティション名を含めるようにhwtaskflow.xml
ファイルを変更します。このファイルは、TaskForm
プロジェクトのadfmsrc
ディレクトリ(たとえば、HelpDeskRequestTaskFlow\adfmsrc\hwtaskflow.xml
)にあります。次の例で詳細を示します。
<hwTaskFlows
xmlns="http://xmlns.oracle.com/bpel/workflow/hwTaskFlowProperties">
<ApplicationName>worklist</ApplicationName>
<LookupType>LOCAL</LookupType>
<TaskFlowDeploy>false</TaskFlowDeploy>
<PartitionName>partition2</PartitionName>
すべてのパーティションでSOAコンポジット・アプリケーションのタスク・フローをデプロイする場合は、PartitionName
を空白のままにします。異なるパーティション上のコンポジットにそれぞれ異なるタスク・フローを使用する場合は、PartitionName
を指定する必要があります。
なお、他のパーティションで同じタスク・フロー・プロジェクトを再利用する場合は、Webコンテキスト・ルートを変更する必要があります。
antスクリプトおよびWLSTコマンドライン・ツールによるSOAコンポジット・アプリケーションのデプロイ
SOAコンポジット・アプリケーションは、ant
スクリプトおよびWLSTコマンド行ツールを使用してもデプロイできます。
-
ant
スクリプトを使用したデプロイの詳細は、『Oracle SOAスイートでのSOAアプリケーションの開発』を参照してください。 -
WLSTを使用したデプロイの詳細は、SOA Suite WLSTコマンド・リファレンスを参照してください。
アンデプロイメントまたは再デプロイメント時のインスタンス、フォルトおよび拒否メッセージの中断状態への更新
SOAコンポジット・アプリケーションをアンデプロイまたは再デプロイすると、インスタンス、フォルトおよび拒否メッセージの一部の状態の動作は中断状態に更新されます。この項では、次のインスタンス、フォルト、および拒否メッセージで、どの状態が中断に更新されるかについて説明します。
-
SOAコンポジット・ビジネス・フロー・インスタンス
-
Oracle Mediatorインスタンス
-
BPELプロセス・インスタンス
-
Oracle BPMNインスタンス
-
ヒューマン・ワークフロー・タスク・インスタンス
-
ビジネス・ルール・インスタンス
-
Oracle B2Bインスタンス
-
参照バインディング・コンポーネント・インスタンス
-
拒否メッセージ
-
ビジネス・フロー・インスタンスのフォルト
ノート:
ビジネス・フロー・インスタンスに関して、次の詳細を確認してください。
-
中断としてマークされなくなったインスタンスでもパージは可能です。
-
完了または失敗状態にあるインスタンスは、アンデプロイメントまたは再デプロイメントの後で中断に変更されません。これは、リリース11g (11.1.1.6)以前からの変更点です。
表11-1に、SOAコンポジット・アプリケーションの再デプロイメントまたはアンデプロイメントの際に中断に更新される状態を示します。
表11-1 アンデプロイメントまたは再デプロイメント時に、中断に更新されるインスタンス、フォルトおよび拒否メッセージの状態
要素 | 中断に更新されるインスタンス、フォルトおよび拒否メッセージの状態 |
---|---|
SOAコンポジット・ビジネス・フロー・インスタンス |
次のフロー・インスタンスは、中断に更新されます。
|
Oracle Mediatorインスタンス |
次のインスタンス状態は、関連コンポジットが再デプロイおよびアンデプロイされると、中断に更新されます。
|
BPELプロセス・インスタンス |
次のインスタンス状態は、関連コンポジットが再デプロイおよびアンデプロイされると、中断に更新されます。
同じリビジョンIDのSOAコンポジット・アプリケーションを再デプロイでき、最初のインスタンスを中断とマークしないシナリオがあります。詳細は、「最初の実行中インスタンスを中断状態に変更せずに同じリビジョンIDのSOAコンポジット・アプリケーションを再デプロイ」を参照してください。 |
Oracle BPMN |
次のインスタンス状態は、関連コンポジットが再デプロイおよびアンデプロイされると、中断に更新されます。
|
ヒューマン・ワークフロー・タスク・インスタンス |
次のインスタンス状態は、関連コンポジットが再デプロイおよびアンデプロイされると、中断に更新されます。
|
ビジネス・ルール・インスタンス |
次のインスタンス状態は、関連コンポジットが再デプロイおよびアンデプロイされると、中断に更新されます。
|
参照バインディング・コンポーネント・インスタンス |
参照バインディング・コンポーネント・インスタンスは、中断への更新が行われません。かわりに、参照バインディング・コンポーネントの元の状態が保持されます。
|
拒否メッセージ |
拒否メッセージに関連付けられた次のエラー・カテゴリは、中断状態に更新されます。
|
インスタンスのフォルト |
ビジネス・フロー・インスタンスのフォルトに関連付けられた次のエラー・カテゴリは、中断状態に更新されます。
|
再デプロイメントおよびアンデプロイメントの詳細は、「SOAコンポジット・アプリケーションの再デプロイ」および「SOAコンポジット・アプリケーションのアンデプロイ」を参照してください。
SOAコンポジット・アプリケーションの再デプロイ
SOAコンポジット・アプリケーションは、SOAコンポジットの再デプロイ・ウィザードを使用して、Oracle Enterprise Manager Fusion Middleware Controlから再デプロイできます。「SOAコンポジットの再デプロイ」ウィザードを使用すると、次のような結果になります。
-
同じSOAコンポジット・アプリケーションをアンデプロイして再デプロイすると、コンポジットのアンデプロイの前に作成されたビジネス・フロー・インスタンスは取得できません。これは、コンポジットをデプロイしてアンデプロイした後、再度デプロイした場合、2つのコンポジットは同一とみなされないためです。アンデプロイとは、コンポジット(および関連アーティファクト全部)がシステムから削除されていることを意味します。再デプロイされたコンポジットは、まったく新しいコンポジットとして処理されます。
-
現在デプロイされているSOAコンポジット・アプリケーションのリビジョンの新規バージョンが同じデプロイメント・ターゲットに再デプロイされます(たとえば、古いバージョン1.0が新規バージョン1.0として再デプロイされます)。
-
このリビジョンの現在デプロイされている古いバージョンに実行中のインスタンスがある場合は、それらのインスタンスを中断状態に変更するかどうかを選択できます。「SOAコンポジットの再デプロイ」ウィザードの「実行中インスタンス」セクションの説明は、ステップ6を参照してください。
インスタンスの状態はインスタンス・リストで使用可能であり、監査およびフローのトレースの詳細にアクセスできます。
再デプロイメント時に中断に更新されるインスタンス、フォルト、拒否メッセージの状態の詳細は、アンデプロイメントまたは再デプロイメント時のインスタンス、フォルトおよび拒否メッセージの中断状態への更新を参照してください。
ノート:
-
変更を行った後にOracle JMSアダプタを再デプロイする場合、JMSサブスクライバは非アクティブになります。また、これはEIS接続性エラーになります。インバウンド・アダプタ・サービスが非アクティブになるため、コンシューマJMSアダプタはメッセージを受け取りません。これを解決するには、コンポジットを停止して再起動します。EIS接続性エラーの詳細は、「SOAコンポジット・アプリケーションとアダプタの可用性の表示」を参照してください。
-
デプロイされたアプリケーションの複数のリビジョンを管理する場合(たとえば、リビジョン1.0および2.0)、このウィザードを使用しないでください。かわりに「SOAコンポジットのデプロイ」ウィザードを使用してください。
-
複数のSOAコンポジット・アプリケーションを一度に再デプロイする機能はサポートされていません。
アプリケーションを再デプロイするには:
-
次のいずれかのオプションを使用して、このページにアクセスします。
SOAインフラストラクチャのメニューから... ナビゲータのSOAフォルダから... 「SOAインフラストラクチャ・ホーム」ページから... SOAコンポジットのメニューから... -
「SOAデプロイ」→「再デプロイ」の順に選択します。
「コンポジットの選択」ページが表示されます。
-
「SOAコンポジット・デプロイ」セクションで、再デプロイするSOAコンポジット・アプリケーションのリビジョンを選択し、「次へ」をクリックします。
-
「soa-infra」を右クリックします。
-
「SOAデプロイ」→「再デプロイ」の順に選択します。
「コンポジットの選択」ページが表示されます。
-
「SOAコンポジット・デプロイ」セクションで、再デプロイするSOAコンポジット・アプリケーションのリビジョンを選択し、「次へ」をクリックします。
-
「デプロイ済コンポジット」タブをクリックします。
-
「コンポジット」表で、特定のSOAコンポジット・アプリケーションを選択します。一度に再デプロイできるのは1つのアプリケーションのみです。
-
「コンポジット」表の上にある「再デプロイ」をクリックします。
-
「SOAデプロイ」→「再デプロイ」の順に選択します。
ノート:
SOAコンポジットの再デプロイ・ウィザードには、SOAフォルダを右クリックし、「SOAデプロイ」→「再デプロイ」の順に選択することによってもアクセスできます。
「アーカイブの選択」ページが表示されます。
-
-
「アーカイブまたは展開済ディレクトリ」セクションで、再デプロイするSOAコンポジット・アプリケーションのリビジョンの場所を選択します。
-
「構成プラン」セクションで、アーカイブに含める構成プランを指定します(オプション)。
-
「次へ」をクリックします。
「確認」ページが表示されます。
-
「デフォルトのリビジョン」セクションで、SOAコンポジット・アプリケーションを、デフォルトのリビジョンとして再デプロイするかどうかを選択します。
-
「実行中インスタンス」セクションで、現在のビジネス・フロー・インスタンスの実行を継続するかどうかを選択します。
-
実行中インスタンスを中断状態に変更
-
選択すると、SOAコンポジット・アプリケーションが再デプロイされた後に、現在実行中のインスタンスが中断状態に変更されます。
-
-
再デプロイ時にインスタンスを続行(現在のインスタンス状態は変更されません)
ノート:
このオプションは、Oracle BPM SuiteがSOAインフラストラクチャにインストールされている場合に表示され、BPMコンポジットのデプロイメントに対してのみサポートされます。次のようなデプロイでは、このオプションを選択しないでください。
-
Oracle BPM SuiteもインストールされているSOAインフラストラクチャ環境からのSOAコンポジット・アプリケーション
-
永続的なBPELプロセスが組み込まれているBPMコンポジット(そのプロセスが変更されているかどうかにかかわらず)、またはデハイドレーション・コールがある埋込みJavaスニペットが組み込まれているBPELプロセス。永続的なBPELプロセスとは、実行が完了するまで時間がかかるプロセスです。永続的なBPELプロセスの例には、非同期プロセス(非同期プロセスは常に永続プロセスです)や、waitアクティビティなどの永続的なアクティビティが含まれる同期プロセスがあります。
このオプションを選択して永続的なBPELプロセスを再デプロイしようとすると、デプロイメントは失敗します。
-
選択すると、BPMコンポジット・アプリケーションが再デプロイされた後も、インスタンスの実行は継続されます。この場合、これらのインスタンスの状態は中止に変更されません。
各サービス・コンポーネントのインスタンスは、それぞれ再デプロイ後に異なる動作を行います。次の詳細事項を理解しておいてください:
-
対象 説明 Oracle Business Process Management Notation (BPMN)のインスタンス
インスタンスを手動で移行する必要があります。
BPMNサービス・コンポーネントのインスタンスは、再デプロイ後にOracle Enterprise Manager Fusion Middleware Controlで実行中と表示されます。ただし、再デプロイしたアプリケーションが正常に実行されるようにするため、Oracle BPMワークスペースで、移行が保留中の状態のインスタンスを検索して、これらのインスタンスを新しいコンポーネント定義に手動で移行します。
Oracle Business Process Management Notation (BPMN)のインスタンス
インスタンスを手動で移行する必要があります。
BPMNサービス・コンポーネントのインスタンスは、再デプロイ後にOracle Enterprise Manager Fusion Middleware Controlで実行中と表示されます。ただし、再デプロイしたアプリケーションが正常に実行されるようにするため、Oracle BPMワークスペースで、移行が保留中の状態のインスタンスを検索して、これらのインスタンスを新しいコンポーネント定義に手動で移行します。
-
-
「再デプロイ」をクリックします。
処理メッセージが表示されます。
この時点では、デプロイメント操作を取り消すことができません。ブラウザ・ページを閉じてもデプロイメントは続行されます。
-
再デプロイが完了したら、「閉じる」をクリックします。
再デプロイメントが完了すると、新規に再デプロイしたコンポジット・リビジョンのホーム・ページが自動的に表示されます。ページの上部に、コンポジットが正常に再デプロイされたことを示す確認メッセージが表示されます。
最初の実行中インスタンスを中断状態に変更せずに同じリビジョンIDのSOAコンポジット・アプリケーションを再デプロイ
最初の実行中インスタンスを中断状態に変更せずに、同じリビジョンIDのSOAコンポジット・アプリケーションを再デプロイできます。再デプロイできる状況は、次のとおりです。
-
コンポジットに永続的なBPELプロセスが組み込まれていない場合。永続的なBPELプロセスは、実行が完了するまで時間がかかります。永続的なBPELプロセスの例には、非同期プロセス(非同期プロセスは常に永続プロセスです)や、waitアクティビティなどの永続的なアクティビティが含まれる同期プロセスがあります。
-
最後のデプロイ以降、永続的なBPELプロセスがいずれも変更されていない場合。
再デプロイ中、最後のデプロイ以降にBPELコンポーネントが変更されているかどうかを確認するためにチェックが実行されます。変更が検出されると、再デプロイは拒否されます。
次のガイドラインに留意してください。
-
パートナ・リンクの変更または削除はできません。
-
デハイドレーション・アクティビティは完全一致する必要があります。たとえば、元のBPELプロセスに受信アクティビティが3つあった場合、変更後のプロセスにも同じ受信アクティビティが3つ必要です。
同期および非同期BPELプロセスの再デプロイ動作の例
この項では、再デプロイ動作の例をいくつか示します。
次のアクションを実行して同期プロセスを再デプロイするとします。
-
同期BPELプロセスAが組み込まれているSOAコンポジット・アプリケーションをデプロイします。
-
コンポジットのインスタンスをいくつか起動します。
-
アクティビティを追加および削除して、同期BPELプロセスAを変更します。
-
コンポジットをプロミスキャス・モードで再デプロイします。
前述のアクションにより、次のようになります。
-
同期BPELプロセスAの古いインスタンスは、中断とマークされません。
-
古いインスタンスの監査証跡には、古いプロセスの実行が表示されます。
-
新しいインスタンスの監査証跡には、新しいプロセスの実行が表示されます。
次のアクションを実行して、アクティビティを待機している非同期プロセスを再デプロイするとします。
-
非同期BPELプロセスBが組み込まれているSOAコンポジット・アプリケーションをデプロイします。このプロセスは、デハイドレーション・アクティビティ(待機/受信) act1を待機しています。
-
act1の後にアクティビティを追加および削除して、同期BPELプロセスBを変更します。
-
コンポジットをプロミスキャス・モードで再デプロイします。
前述のアクションにより、次のようになります。
-
非同期BPELプロセスBの古いインスタンスは、中断とマークされません。
-
古いインスタンスの監査証跡には、引き続き古いプロセスの実行が表示されます。
-
新しいインスタンスの監査証跡には、新しいプロセスの実行が表示されます。
-
act1を待機している非同期BPELプロセスBのインスタンスは、新しいプロセス定義を使用するアクティビティから続行します。
ノート:
ヒューマン・タスクを待機している非同期プロセスの場合、このシナリオでの動作は、受信アクティビティを待機している場合と同じです。
次のアクションを実行して、削除済アクティビティを待機している非同期プロセスを再デプロイするとします。
-
act1の後にアクティビティを追加および削除し、アクティビティact1も削除して、非同期BPELプロセスBを変更します。
-
プロセスをプロミスキャス・モードで再デプロイします。
前述のアクションにより、新しいプロセス定義にアクティビティact1が含まれている必要があることを示すエラーでデプロイは失敗します。
SOAコンポジット・アプリケーションのアンデプロイ
SOAコンポジット・アプリケーションは、SOAコンポジットのアンデプロイ・ウィザードを使用して、Oracle Enterprise Manager Fusion Middleware Controlからアンデプロイできます。「SOAコンポジットのアンデプロイ」ウィザードを使用すると、次のような結果になります。
-
アプリケーションのこのリビジョンの構成や監視ができなくなります。
-
また、アプリケーションのこのリビジョンのインスタンスも処理できなくなります。
-
現在実行中のインスタンスの状態が中止になり、このコンポジットに送信された新しいメッセージは処理されません。
-
アンデプロイしたコンポジット・アプリケーションのインスタンスの状態は「中断」に設定されます。インスタンスの状態はインスタンス・リストで使用可能であり、監査証跡およびフローのトレースの詳細にアクセスできます。
-
SOAコンポジット・アプリケーションのデフォルトのリビジョン(たとえば、2.0)をアンデプロイした場合、アプリケーションの次に使用可能なアクティブなリビジョン(たとえば、1.0)が新しいデフォルトとして自動的に指定されます。
-
デフォルトのコンポジット・リビジョンをアンデプロイした場合、このウィザードの終了時に警告メッセージが表示されます。
使用可能なアクティブ・リビジョンが存在しない場合にデフォルトのリビジョンをアンデプロイすると、コンポジットが新しい受信リクエストを処理できなくなる可能性があります。デフォルトのリビジョンをアンデプロイする前に、デプロイ済のコンポジットのアクティブなリビジョンを最低1つは設定しておくことをお薦めします。
このリビジョンをアンデプロイしたときに、そのコンポジットのアクティブなリビジョンが見つからない場合、リタイア済のリビジョンが自動的に新しいデフォルトのリビジョンとして指定されます。このウィザードを閉じた後に、警告メッセージが表示されます。リタイア済のコンポジット内の現在実行中のインスタンスはすべて正常に終了しますが、これらのインスタンスは受信リクエストを処理することはできません。現在のデフォルトのリビジョンをアンデプロイした後に、このコンポジットに対する新規の受信リクエストを処理するには、新しいリビジョンをデプロイするか、以前にリタイアしたリビジョンを再アクティブ化する必要があります。
アンデプロイメント時に中断に更新されるインスタンス、フォルト、拒否メッセージの状態の詳細は、アンデプロイメントまたは再デプロイメント時のインスタンス、フォルトおよび拒否メッセージの中断状態への更新を参照してください。
ノート:
現在のアプリケーションの既存のリビジョンをアンデプロイしてから再デプロイする場合、このウィザードを使用しないでください。かわりに「SOAコンポジットの再デプロイ」ウィザードを使用してください。「SOAコンポジットの再デプロイ」ウィザードを使用すれば、SOAコンポジット・アプリケーションの既存のリビジョンを再デプロイし、リビジョンの現在デプロイされているバージョンの古い方を削除(上書き)できます。
アプリケーションをアンデプロイするには:
ノート:
複数のSOAコンポジット・アプリケーションが同じSOAフォルダにある場合は、まとめてアンデプロイできます。詳細は、SOAフォルダおよびワーク・マネージャ・グループの管理を参照してください。
-
次のいずれかのオプションを使用して、このページにアクセスします。
SOAインフラストラクチャのメニューから... ナビゲータのSOAフォルダから... 「SOAインフラストラクチャ・ホーム」ページから... SOAコンポジットのメニューから... -
「SOAデプロイ」→「アンデプロイ」の順に選択します。
「コンポジットの選択」ページが表示されます。
-
「SOAコンポジット・デプロイ」セクションで、アンデプロイする特定のSOAコンポジット・アプリケーションを選択し、「次へ」をクリックします。
-
「soa-infra」を右クリックします。
-
「SOAデプロイ」→「アンデプロイ」の順に選択します。
「コンポジットの選択」ページが表示されます。
-
「SOAコンポジット・デプロイ」セクションで、アンデプロイする特定のSOAコンポジット・アプリケーションを選択し、「次へ」をクリックします。
-
「デプロイ済コンポジット」タブをクリックします。
-
「コンポジット」表で、特定のSOAコンポジット・アプリケーションを選択します。一度にアンデプロイできるのは1つのアプリケーションのみです。
-
「コンポジット」表の上にある「アンデプロイ」をクリックします。
-
「SOAデプロイ」→「アンデプロイ」の順に選択します。
ノート:
SOAコンポジットのアンデプロイ・ウィザードには、次の追加SOAフォルダ・オプションを使用してアクセスすることもできます:
-
SOAフォルダを右クリックし、「SOAデプロイ」→「このフォルダからすべてアンデプロイ」の順に選択します
-
SOAフォルダのホーム・ページで、「デプロイメント」→「このフォルダからすべてアンデプロイ」の順に選択します
-
「SOAフォルダの管理」ページで、選択したSOAフォルダに対して「デプロイメント」→「このフォルダからすべてアンデプロイ」の順に選択します
「確認」ページが表示されます。
-
-
確認した後は、「アンデプロイ」をクリックします。デプロイ済コンポジット・アプリケーションの最後に残ったリビジョンをアンデプロイしようとすると、警告が表示されます。
処理メッセージが表示されます。
この時点では、アンデプロイ操作を取り消すことができません。ブラウザ・ページを閉じてもアンデプロイメントは続行されます。
-
アンデプロイメントが完了すると、SOAインフラストラクチャの「デプロイ済コンポジット」ページが自動的に表示されます。ページの上部に、コンポジットが正常にアンデプロイされたことを示す確認メッセージが表示されます。
ノート:
SOAフォルダが削除されると、その中のすべてのSOAコンポジット・アプリケーションが自動的にアンデプロイされます。SOAフォルダ内のすべてのアプリケーションがアンデプロイされることを示すメッセージが表示されます。
デプロイ済SOAコンポジット・アプリケーションの状態管理
デプロイ済のSOAコンポジット・アプリケーションのライフサイクルの状態は、次の2つのページのいずれかから管理できます。
-
SOAインフラストラクチャの「デプロイ済コンポジット」ページ。このページには、SOAインフラストラクチャにデプロイされたすべてのSOAコンポジット・アプリケーションがリストされます。
-
特定のSOAコンポジット・アプリケーションのアプリケーション・ホーム・ページ(すべてのタブ)。
実行できる管理タスクは、使用しているページによって異なります。表11-2に詳細を示します。
表11-2 アプリケーションの状態に関するアクション
アクション | SOAインフラストラクチャの「デプロイ済コンポジット」ページでの実行の可否 | アプリケーションのホーム・ページ(すべてのタブ)での実行の可否 |
---|---|---|
停止と起動 |
はい |
はい |
リタイアとアクティブ化 |
はい |
はい |
デフォルトとして設定 |
はい |
|
デプロイ |
はい |
可(「コンポジット」メニューから「SOAデプロイ」→「別のコンポジットをデプロイ」の順に選択) |
アンデプロイ |
はい |
可(「コンポジット」メニューから「SOAデプロイ」→「アンデプロイ」の順に選択) |
再デプロイ |
はい |
可(「コンポジット」メニューから「SOAデプロイ」→「再デプロイ」の順に選択) |
テスト |
不可 |
はい |
設定: コンポジットの監査レベル |
不可 |
はい |
設定: ペイロードの検証 |
不可 |
はい |
設定: 分析とセンサーの有効化/無効化 |
不可 |
はい |
「WSDLおよびエンドポイントURIの表示」アイコン |
不可 |
はい |
ノート:
SOAコンポジット・アプリケーションのXML定義を表示するには、「コンポジット定義」タブの下部にある「ソース」タブをクリックします。
実行するアクションに応じて、次の各項を参照してください。
詳細は、「SOAコンポジット・アプリケーションの概要」を参照してください。
SOAインフラストラクチャ・レベルでのすべてのアプリケーションの状態管理
すべてのSOAコンポジット・アプリケーションの状態は、SOAインフラストラクチャ・レベルで「デプロイ済コンポジット」ページから管理できます。
SOAインフラストラクチャ・レベルですべてのアプリケーションの状態を管理するには:
-
次のいずれかのオプションを使用して、このページにアクセスします。
SOAインフラストラクチャのメニューから... ナビゲータのSOAフォルダから... SOAコンポジットのメニューから... -
「ホーム」を選択します。
-
「soa-infra」をクリックします。
-
「SOAインフラストラクチャ」を選択します。
-
-
「デプロイ済コンポジット」タブをクリックします。
「デプロイ済コンポジット」ページに、次の詳細が表示されます。
-
特定のSOAコンポジット・アプリケーションを検索するためのユーティリティ。コンポジット名の全部または一部を指定して「検索」をクリックします。SOAフォルダでSOAコンポジット・アプリケーションを検索することもできます。
-
アクティブなSOAコンポジット・アプリケーションのみを検索するためのチェック・ボックス。
-
SOAコンポジット・アプリケーションのライフサイクルの状態(起動、停止、デフォルトとして設定など)を管理するための一連のオプション。
-
デプロイされたSOAフォルダを含む、SOAインフラストラクチャにデプロイされたすべてのSOAコンポジット・アプリケーションのリスト。現在のモード(アクティブまたはリタイア)、および最終変更日(デプロイメント時間、再デプロイメント時間またはコンポジット構成の変更)が表示されます。コンポジット名の左にある緑色の丸印は、それがアプリケーションのデフォルトのリビジョンであることを示しています。
ノート:
デプロイ済SOAコンポジット・アプリケーションに関する最新の詳細を表示するには、右上隅にある「リフレッシュ」アイコンをクリックするか、他のページに移動してこのページに戻ります。
-
-
「デプロイ」をクリックして新しいアプリケーションをデプロイします。「コンポジット」セクションの上にリストされている他のすべてのオプションについては、最初にコンポジット・アプリケーション名の左の列をクリックしてコンポジット・アプリケーションを選択し、次に実行する特定のオプションを選択します。
次の表に、使用可能なオプションを示します。
アクション 説明 停止
実行中のSOAコンポジット・アプリケーションのリビジョンを停止します。コンポジットが停止されると、そのコンポジットへのすべてのリクエスト(開始またはコールバック)は拒否されます。新しい受信リクエストは処理できません。既存のすべてのインスタンスは通常どおり完了できます(コンポジットがリタイアするときと同様)。
ノート: 使用するバインディング・コンポーネントによって動作が異なります。たとえば、Webサービス・リクエストの場合は、却下されてコール元に戻されます。JCAアダプタ・バインディング・コンポーネントでは、このような場合、異なる動作になることがあります(リクエストが拒否表に配置されるなど)。
このオプションは、コンポジット・アプリケーションが開始されると表示されます。
起動
停止したコンポジット・アプリケーションのリビジョンを再起動します。これにより、新規リクエストを処理できるようになります(却下されません)。メッセージのリカバリは発生しません。
このオプションは、コンポジット・アプリケーションが停止されると表示されます。
リタイア
選択したコンポジットのリビジョンをリタイア状態にします。プロセスのライフサイクルがリタイア状態の場合、新しいインスタンスは作成できません。既存インスタンスは正常に完了できます。
コンポジット・アプリケーションへの開始リクエストは拒否されてクライアントに返されます。バインディング・コンポーネントが異なる場合の拒否の動作については、「停止」オプションで説明しています。
起動済のビジネス・フロー・インスタンスへのコールバックは、適切に配信されます。
ノート: HTTP/Webサービス・リクエストのコールバックのみが処理されます。AQアダプタなどのアダプタ・コールバック・サービスを使用するコンポジットは処理されません。
このオプションは、コンポジット・アプリケーションがアクティブの場合に表示されます。
デフォルトのコンポジット・リビジョンをリタイアしようとする場合、またはデフォルトのコンポジット・リビジョンをすでにリタイアした場合、次の点に注意してください。これらの点を記載した警告ページも表示されます。
-
デフォルトのコンポジット・リビジョンをリタイアしようとするときに、そのコンポジットの他のアクティブなリビジョンが見つかった場合、見つかったコンポジットが新しいデフォルトのリビジョンとして指定されます。アクティブなリビジョンが複数ある場合は、(タイムスタンプを基準にして)直前にデフォルトのリビジョンだったアクティブなコンポジットが、デフォルトのリビジョンとして指定されます。その後、リタイアされたリビジョンを再アクティブ化しても、デフォルトのリビジョンに自動的に戻ることはありません。再度、明示的にデフォルトのリビジョンに指定する必要があります。
-
デフォルトのコンポジット・リビジョンをリタイアして、そのコンポジットのアクティブなリビジョンが見つからない場合、新しいデフォルトのリビジョンは指定されず、警告メッセージが表示されます。リタイアしたリビジョンが、デフォルトのリビジョンのままになります。ただし、このコンポジットでは、受信リクエストを処理できません。このコンポジットに対する新規の受信リクエストを処理するには、新しいリビジョンをデプロイするか、以前にリタイアしたリビジョンの1つを再アクティブ化する必要があります。
アクティブ化
リタイア状態のコンポジット・アプリケーションのリビジョンをアクティブ化します。このオプションでの次の動作に注意してください。
-
デプロイされると、すべてのコンポジット・アプリケーションは自動的にアクティブになります。
-
新しくデプロイされたコンポジット・アプリケーションの他のリビジョンはアクティブのままで、自動的にリタイアされることはありません。必要であれば、これらは明示的にリタイアする必要があります。
このオプションは、アプリケーションがリタイア状態のときに表示されます。
デフォルトとして設定
選択したコンポジット・アプリケーション・リビジョンをデフォルトとして設定します。「コンポジット」表では、デフォルトのリビジョンに緑色の丸印が付いています。特定のコンポジット・アプリケーション・リビジョンに対する新規リクエストを受信すると、そのコンポジット・アプリケーション・リビジョンが起動します。リビジョンが指定されていない新規リクエストを受信すると、デフォルトのリビジョンが起動します。
デフォルトのリビジョンは、コンポジット・アプリケーションがリタイアされると、変更される場合があります。変更は、そのコンポジットのアクティブなリビジョンが他にあるかどうかに基づいて行われます。詳細は、この表の「リタイア」アクションの説明を参照してください。
デフォルトのリビジョンは、デフォルトのコンポジット・アプリケーションのリビジョンがアンデプロイされると、自動的に変更されます。
コンポジット・アプリケーションを再デプロイした場合も、デフォルトのコンポジット・リビジョンは自動的に変更されます。再デプロイメント時に以前のデフォルトのリビジョンをデフォルトのままにするように指定しないかぎり、新規に再デプロイしたリビジョンが自動的にデフォルトのリビジョンになります。詳細は、この表の「アンデプロイ」アクションの説明を参照してください。
インバウンド・アダプタがアクティブ化されるのは、デフォルトのリビジョンでのみです。
デプロイ
リビジョンをデプロイします。デプロイメントによって、SOAインフラストラクチャのコンポジット・アプリケーションがアクティブ化されます。デプロイする場合に、このオプションを選択します。
-
最初の新規SOAコンポジット・アプリケーション。
-
現在デプロイされているSOAコンポジット・アプリケーションのリビジョン(たとえば、1.0)とは異なる、新しいリビジョン(たとえば、2.0)のSOAコンポジット・アプリケーション。このオプションでは、リビジョン1.0と2.0の両方を同時にデプロイできます。
すでに存在するリビジョンを指定すると、エラーが発生します。このリビジョンは、「SOAコンポジットのデプロイ」ウィザードを使用して変更できません。
詳細は、「SOAコンポジット・アプリケーションのデプロイ」および「SOAフォルダおよびワーク・マネージャ・グループの管理」を参照してください。
アンデプロイ
選択したコンポジット・アプリケーションのリビジョンをアンデプロイします。このアクションの結果は次のようになります。
-
コンポジット・アプリケーションのこのリビジョンは、構成およびモニターできなくなります。
-
コンポジット・アプリケーションのこのリビジョンのインスタンスは処理できなくなります。
-
すでに完了したプロセスは表示できません。
-
現在実行中のインスタンスの状態は「中断」に変更され、このコンポジット・アプリケーションに送信した新規メッセージは処理されません。
-
コンポジット・アプリケーションのデフォルトのリビジョン(たとえば、2.0)をアンデプロイした場合、コンポジット・アプリケーションの次に使用可能なアクティブなリビジョン(たとえば、1.0)がデフォルトになります。
使用可能なアクティブ・リビジョンが存在しない場合に古いデフォルトのリビジョンをアンデプロイすると、コンポジットが新しい受信リクエストを処理できなくなる可能性があります。デフォルトのリビジョンをアンデプロイする前に、デプロイ済のコンポジットのアクティブなリビジョンを最低1つは設定しておくことをお薦めします。
デフォルトのリビジョンをアンデプロイしたときに、そのコンポジットのアクティブ・リビジョンが見つからない場合、リタイア済のリビジョンが自動的に新しいデフォルトのリビジョンとして指定されます。このウィザードを閉じた後に、警告メッセージが表示されます。リタイア済のコンポジット内の現在実行中のインスタンスはすべて正常に終了しますが、これらのインスタンスは受信リクエストを処理することはできません。現在のデフォルトのリビジョンをアンデプロイした後に、このコンポジットに対する新規の受信リクエストを処理するには、新しいリビジョンをデプロイするか、以前にリタイアしたリビジョンを再アクティブ化する必要があります。
ノート: 複数のSOAコンポジット・アプリケーションが同じSOAフォルダにある場合は、それらを同時にアンデプロイする機能がサポートされています。
詳細は、「SOAコンポジット・アプリケーションのアンデプロイ」および「SOAフォルダおよびワーク・マネージャ・グループの管理」を参照してください。
再デプロイ
SOAコンポジット・アプリケーションの既存のリビジョンを再デプロイします。このアクションの結果は次のようになります。
-
現在デプロイされているSOAコンポジット・アプリケーションのリビジョンの新規バージョンが再デプロイされます(たとえば、古いバージョン1.0が新規バージョン1.0として再デプロイされます)。
-
現在デプロイされているこのリビジョンの古いバージョンは削除(上書き)されます。
-
このリビジョンの現在デプロイされている古いバージョンに実行中のインスタンスがある場合は、それらのインスタンスを中断状態に変更するかどうかを選択できます。
詳細は、「SOAコンポジット・アプリケーションの再デプロイ」を参照してください。
詳細は、「SOAコンポジット・アプリケーションのライフサイクルの状態の概要」を参照してください。
-
SOAコンポジット・アプリケーションのホーム・ページでのアプリケーションの状態管理
個々のSOAコンポジット・アプリケーションの状態は、アプリケーションのホーム・ページで管理できます。
SOAコンポジット・アプリケーションのホーム・ページでアプリケーションの状態を管理するには:
-
次のいずれかのオプションを使用して、このページにアクセスします。
SOAインフラストラクチャのメニューから... ナビゲータのSOAフォルダから... -
「ホーム」を選択します。
-
「デプロイ済コンポジット」タブを選択します。
-
特定のSOAコンポジット・アプリケーションを選択します。
-
soa-infraの下にあるSOAフォルダを展開します。
-
特定のSOAコンポジット・アプリケーションを選択します。
選択したSOAコンポジット・アプリケーションの「ダッシュボード」ページが表示されます。
-
-
ページの上部にあるオプションのリストから、実行するアクションを選択します。これらのオプションは、SOAコンポジット・アプリケーションの「コンポジット定義」、「フロー・インスタンス」、「ユニット・テスト」および「ポリシー」の各ページの上部にも表示されます。
アクション | 説明 |
---|---|
停止 |
このオプションの説明は、「SOAインフラストラクチャ・レベルでのすべてのアプリケーションの状態管理」のステップ3にある表を参照してください。 |
起動 |
このオプションの説明は、「SOAインフラストラクチャ・レベルでのすべてのアプリケーションの状態管理」のステップ3にある表を参照してください。 |
リタイア |
このオプションの説明は、「SOAインフラストラクチャ・レベルでのすべてのアプリケーションの状態管理」のステップ3にある表を参照してください。 |
アクティブ化 |
このオプションの説明は、「SOAインフラストラクチャ・レベルでのすべてのアプリケーションの状態管理」のステップ3にある表を参照してください。 |
テスト |
Webサービスのテスト・ページからテスト・インスタンスを開始できます。 ノート: SOAコンポジット・アプリケーションが停止またはリタイアしているときは、このボタンは無効です。停止またはリタイアしたアプリケーションのインスタンスは作成できないためです。また、このアプリケーションで使用可能なWebサービスがない場合も、ボタンは無効になります。このページからテストできるのは、Webサービス・バインディングのあるサービスを持つコンポジット・アプリケーションのみです。 詳細は、「ビジネス・フローのテスト・インスタンスの起動」を参照してください |
設定: コンポジットの監査レベル |
SOAコンポジット・アプリケーション・レベルで実行される監査トラッキングのレベルを設定します。この設定は、SOAインフラストラクチャ・レベルで定義されている監査レベルをオーバーライドできます。デフォルト値は「継承」で、親レベルの設定はオーバーライドされません。 コンポジットのホーム・ページを使用した監査レベルの設定を示します。 監査トラッキングのレベルを設定する場合は、次のオプションが選択可能です。
SOAコンポジット・アプリケーション・レベルで監査レベル・トラッキングを設定すると、SOAインフラストラクチャ・レベルで設定した同じトラッキングがオーバーライドされます。デフォルトでは、SOAコンポジット・アプリケーション・レベルとSOAインフラストラクチャ・レベルの設定は同じです。グローバルなSOAインフラストラクチャの設定が変更されると、SOAコンポジット・アプリケーションの設定も自動的に変更されます。ただし、SOAコンポジット・アプリケーション・レベルで別の設定を選択すると、継承された設定をオーバーライドできます。 現在のグローバル値と同じローカル・コンポジット値を明示的に選択した場合も、設定がオーバーライドされます。この場合、SOAインフラストラクチャの設定が変更されても、そのコンポジット・アプリケーションは新しい値を継承しません。たとえば、SOAインフラストラクチャの設定が「オフ」であるとします。これによって、すべてのコンポジット・アプリケーションは監査トラッキングが「オフ」に設定されます。ここで、コンポジット・アプリケーションXYZを明示的に「オフ」に設定したとします。次に、SOAインフラストラクチャに移動して、その設定を「本番」に変更します。その結果、コンポジット・アプリケーションXYZを除くすべてのコンポジット・アプリケーションのトラッキング・レベルは「本番」に変更されますが、コンポジット・アプリケーションXYZの設定は「オフ」のままです。 |
設定: ペイロードの検証 |
コンポジット・アプリケーション・リビジョンのインバウンド・ポイントとアウトバウンド・ポイントで、XMLスキーマ・ベースのペイロードを検証します。ペイロード検証を有効化したときに無効なペイロード(スキーマに従っていないペイロード)がある場合、そのメッセージに対してフォルトが生成されます。 ただし、同期サービスのレスポンス・メッセージは例外です。このメッセージは、ペイロードの検証が有効な場合でも検証されません。検証されないのはアウトバウンド・メッセージのみで、インバウンド・メッセージは引続き検証されます。 |
設定: 分析とセンサーの有効化/無効化 |
選択すると、SOAコンポジット・アプリケーションで次のデータの収集が有効または無効になります。
次のデータ収集アクションを実行できます。
詳細は、分析およびセンサーの構成および分析データ、BPELセンサー・データ、コンポジット・センサー・データの収集の無効化および有効化を参照してください。 ノート: 「分析とセンサーの有効化/無効化」オプションは、BPELプロセス・サービス・コンポーネントが組み込まれているコンポジットについてのみ表示されます。 |
WSDLおよびエンドポイントURIの表示(アイコン) |
クリックしてこのSOAコンポジットアプリケーションのエンドポイント・アドレスとすべての外部サービスのWSDLを表示します。 ノート: Safariブラウザを使用してこの情報を表示する場合は、「Safariブラウザを使用してWSDLファイルの内容を表示する場合の制限」を参照してください。 |
次の画像は、コンポジットのホーム・ページから監査レベルを設定した例です。
詳細は、次を参照してください。
その他のライフサイクル状態動作のシナリオの理解
この項では、その他のライフサイクルの状態動作の問題について説明します。
BPEL処理途中でSOAインフラストラクチャがデプロイされる管理対象のOracle WebLogic Serverの起動および停止
SOAコンポジット・アプリケーションでのBPELプロセスの途中で、SOAインフラストラクチャがデプロイされている管理対象のOracle WebLogic Serverを起動および停止する場合は、次の問題に注意してください。
-
同期BPELプロセスの場合
シナリオ全体が同期され、実行中の状態(サーバーの再起動後)のインスタンスはBPELのwaitアクティビティで保留されます。このため、フロー・スレッドはサーバーで終了します(waitアクティビティでスリープ中)。サーバーが再起動しても、フローは同期であるため、同じインスタンスは再起動されません。したがって、サーバーの再起動後もインスタンスで処理が発生しないため、これらのインスタンスは常に実行中の状態です。
-
非同期BPELプロセスの場合
BPELのinvokeアクティビティの途中でサーバーが停止すると、BPELが受信したメッセージは処理されません。BPELは再起動時にこれらのメッセージを自動的にリカバリしないため、メッセージを手動でリカバリする必要があります。
ビジネス・フロー・インスタンス名の設定
Oracle MediatorおよびOracle BPEL Process Managerでは、設計時にビジネス・フロー・インスタンス名を設定できます。詳細は、『Oracle SOAスイートでのSOAアプリケーションの開発』の設計時のビジネス・フロー・インスタンスまたはコンポジット・インスタンス名の設定方法に関する項を参照してください。
SOAコンポジット・アプリケーションのテストの自動化
SOAコンポジット・アプリケーションのテストを自動化するテスト・ケースを作成、デプロイおよび実行できます。テスト・ケースを使用すると、本番環境へのデプロイメントの前に、SOAコンポジット・アプリケーションとWebサービス・パートナ間の相互作用をシミュレートできます。これにより、本番環境へのデプロイメント準備が完了するまでに、プロセスとWebサービス・パートナの相互作用が期待どおりであるかを確認できます。
Oracle JDeveloperでテスト・ケースを作成し、SOAコンポジット・アプリケーションに組み込みます。このアプリケーションは、その後、次のいずれかの場所からデプロイされて管理されます。
-
Oracle Enterprise Manager Fusion Middleware Control (この項で説明)
-
Oracle JDeveloper
詳細は、『Oracle SOA SuiteでのSOAアプリケーションの開発』のOracle JDeveloperからのテスト・スイートのデプロイおよび実行方法に関する項を参照してください。
また、SOAコンポジット・アプリケーションのテスト・ケース内に、BPELプロセス・サービス・コンポーネントのテスト・ケースを作成することもできます。
SOAコンポジット・アプリケーションのテストを自動化するには:
ノート:
Oracle Enterprise Manager Fusion Middleware ControlからSOAコンポジット・アプリケーションまたはBPELプロセス・サービス・コンポーネントのテストを行う前に、『Oracle SOA SuiteでのSOAアプリケーションの開発』の「SOAコンポジット・アプリケーションのテストの自動化」で、テスト・ケースの作成に関する説明を参照してください。
-
ナビゲータで、「SOA」を展開して、「soa-infra (server_name)」をクリックします。
-
「SOAインフラ」ページで「デプロイ済コンポジット」をクリックしてから、「コンポジット」をクリックします。
-
「コンポジット」セクションで、特定のSOAコンポジット・アプリケーションを選択します。
-
「ユニット・テスト」タブをクリックします。
表示されるテスト・ケースは、Oracle JDeveloperで設計され、デプロイ済のSOAコンポジット・アプリケーションに組み込まれたテスト・ケースです。
-
テスト・スイート全体を選択するか、実行するスイートの個々のテストを選択して、「実行」をクリックします。
テストの作成プロンプトが表示されます。
-
次の値を入力し、「OK」をクリックします。
フィールド 説明 テスト実行名
テスト・インスタンスの名前を入力します。テストの終了時に、レポート詳細がこの名前で取得されます。
タイムアウト
テストを終了させる値(秒単位)を入力します。この時間内にテストが完了しない場合、テストは終了されます。
同時テスト・インスタンスの数
作成するテスト・インスタンスの数を入力します。
実行中のテストを追跡するための「テスト実行」ページが自動的に表示されます。
「テスト実行」ページを使用して、実行中のテスト・ケースを追跡し、テスト結果を表示できます。テスト・スイートは、1つ以上のテスト・ケースの論理的な集合で構成されます。各テスト・ケースには、テスト・インスタンスの実行時に実行される一連のコマンドが含まれています。テスト・スイートの実行は、テスト実行と呼ばれます。
-
「テスト実行名」列で特定のテスト実行をクリックして、「テスト実行の結果」セクションに詳細を表示します。追加のテスト実行を作成する場合は、「テスト・ケース」ページにいつでも戻ることができます。
「テスト実行の結果」セクションには、実行されたテスト実行の詳細(テスト・サマリー、成功率など)が表示されます。詳細は、「weblogic」リンクの下で、「ヘルプ」→「このページのヘルプ」をクリックします。
-
ページの下部にアサーション詳細が表示されます。アサーションにより、変数データやプロセス・フローを検証できます。
-
インスタンス番号をクリックして、特定のテスト詳細を表示します。
ユニット・テスト実行を実行して作成されたビジネス・フロー・インスタンスは、黄色のボックスとともに表示されます。これらのインスタンスは、この黄色のボックスによって、「Webサービスのテスト」ページで作成されたり、アプリケーションの外部コンシューマによって自動的に作成されたテスト・インスタンスと区別されます。
詳細は、次のドキュメントを参照してください。
-
Oracle JDeveloperでのSOAコンポジット・アプリケーションおよびBPELプロセス・サービス・コンポーネントのテスト・ケースの作成および実行の詳細は、『Oracle SOA SuiteでのSOAアプリケーションの開発』の「SOAコンポジット・アプリケーションのテストの自動化」を参照してください
テスト・スイートの一括実行時のレスポンス・メッセージ・サイズの増加
sca-test
ant
コマンドを使用して、大量のテスト(50テストなど)で構成されるテスト・スイートを一括して実行すると、Oracle Enterprise Manager Fusion Middleware Controlの「ユニット・テスト」ページの「結果」タブに、どのテスト結果も表示されないことがあります。次のエラー・メッセージは、サーバー・ログ・ファイルに表示されます。
<Nov 13, 2013 7:31:45 AM PST> <Error> <Socket> <BEA-000403> <IOException occurred on socket: Socket[addr=2606:b400:2010:4049:216:3eff:fe52:613d/2606:b400:2010:4049:216:3ef f:fe52:613d,port=16139,localport=3872] weblogic.socket.MaxMessageSizeExceededException: Incoming message of size: '10000080' bytes exceeds the configured maximum of: '10000000' bytes for protocol: 't3'. weblogic.socket.MaxMessageSizeExceededException: Incoming message of size: '10000080' bytes exceeds the configured maximum of: '10000000' bytes for protocol: 't3' at weblogic.socket.BaseAbstractMuxableSocket.incrementBufferOffset(BaseAbstractMu xableSocket.java:230) at weblogic.rjvm.t3.MuxableSocketT3.incrementBufferOffset(MuxableSocketT3.java:35 1) at weblogic.socket.SocketMuxer.readFromSocket(SocketMuxer.java:991) at . . . . . .
このエラーは、テスト・レスポンス・メッセージが大きすぎるときに発生します。このエラーを解決するには、MaxMessageSize
プロパティを増やします。
最大応答メッセージ・サイズを大きくするには:
sca-test
ant
スクリプトの詳細は、『Oracle SOA SuiteでのSOAアプリケーションの開発』のantスクリプトによるSOAコンポジット・アプリケーションのデプロイおよび管理に関する項を参照してください。
SOAコンポジット・アプリケーションのポリシーの管理
現在デプロイされているSOAコンポジット・アプリケーションとの間で、セキュリティ・ポリシーをアタッチまたはデタッチできます。ポリシーはメッセージの配信にセキュリティを適用します。ポリシーでは、資格証明をCSFキーストアに入力するか、または証明書を証明書ストアに入力することを要求できます。
ポリシーの詳細は、「ポリシーの概要」を参照してください。
ノート:
-
ポリシーをアタッチする前に、使用可能なポリシーの定義およびユーザー環境で使用するポリシーの詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のWebサービスに使用する事前定義済ポリシーの決定に関する項を参照してください。
-
ポリシー設定のオーバーライドの詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のFusion Middleware Controlを使用したポリシー構成プロパティのオーバーライドに関する項を参照してください。
SOAコンポジット・アプリケーション・ポリシーを管理するには:
-
次のいずれかのオプションを使用して、このページにアクセスします。
SOAインフラストラクチャのメニューから... ナビゲータのSOAフォルダから... SOAコンポジットのメニューから... -
「ホーム」を選択します。
-
「デプロイ済コンポジット」を選択します。
-
「コンポジット」セクションで、特定のSOAコンポジット・アプリケーションを選択します。
-
「ポリシー」タブをクリックします。
-
soa-infraの下にあるSOAフォルダを展開します。
-
特定のSOAコンポジット・アプリケーションを選択します。
-
「ポリシー」タブをクリックします。
-
「ポリシー」を選択します。
「ポリシー」ページを使用すると、SOAコンポジット・アプリケーションに対してポリシーをアタッチおよびデタッチできます。ポリシー表には、アタッチされたポリシーの名前、ポリシーがアタッチされたコンポーネント、切替え可能なポリシー参照ステータス(有効または無効)、カテゴリ(「管理」、「信頼できるメッセージング」、「MTOMアタッチメント」、「セキュリティ」または「WSアドレス」など)、違反、およびSOAインフラストラクチャの最後の再起動以降の認証、認可、機密性および整合性の失敗が表示されます。
-
-
「アタッチ/デタッチ先」をクリックします。
複数のサービスまたはコンポーネントが使用可能な場合は、アタッチまたはデタッチを実行するサービスまたはコンポーネントを選択するプロンプトが表示されます。
-
ポリシーのアタッチまたはデタッチの対象のコンポーネントを選択します。
ポリシーをアタッチまたはデタッチするためのダイアログが起動します。
「アタッチされたポリシー」セクションに、現在アタッチされているポリシーが表示されます。「使用可能なポリシー」セクションには、アタッチ可能な追加のポリシーが表示されます。
-
使用環境に適した、アタッチ対象のポリシーを選択します。
-
「アタッチ」をクリックします。
「直接アタッチされたポリシー」セクションに、アタッチされたポリシーが表示されます。
-
必要に応じて、追加のポリシーをアタッチします。
-
ポリシーのアタッチを終了した後は、「検証」をクリックします。
-
エラー・メッセージが表示された場合は、検証エラーがなくなるまで必要な修正を行います。
-
「OK」をクリックします。
アタッチしたポリシーがポリシー表に表示されます。
サーバー再起動後にローカル・ポリシーのポリシー・サブジェクトが無効になる可能性がある
SOAコンポジット・アプリケーションにアタッチされたローカル・ポリシーのポリシー・サブジェクトが、サーバー再起動の後に無効になる場合があります。この問題を解決するには、再度WSLT listWebServicePolicies
コマンドを呼び出す必要があります。たとえば、次のステップを実行します。
コンポジット間呼出しでのポリシー・アタッチメントおよびローカルの最適化
OWSMでは、1つのコンポジットの参照で2つ目のコンポジットへのWebサービス・バインディングを指定するコンポジット間呼出しに対してOracle SOA Suiteのローカルの最適化機能がサポートされます。ローカルの最適化を使用すると、実行時にHTTPスタックとSOAP/正規化メッセージ変換をバイパスできます。コンポジットが異なるコンテナにある場合、ローカルの最適化は使用されません。ポリシーがWebサービス・バインディングにアタッチされている場合は、ローカルの最適化が使用されているとポリシーを呼び出すことができません。
デフォルトでは、OWSMセキュリティ・ポリシーには、ポリシーでローカルの最適化がサポートされるかどうかを示すlocal-optimization
プロパティが含まれます。ポリシーの設定は、Oracle Enterprise Manager Fusion Middleware Controlから表示できます。
ポリシーのローカル最適化設定を表示するには:
セキュリティ・ポリシーに対するデフォルトのローカルの最適化設定の詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』を参照してください。
composite.xml
ファイルのバインディング・セクションにoracle.webservices.local.optimization
プロパティを追加することで、ポリシーのローカルの最適化設定をオーバーライドできます。サポートされている値は次のとおりです。
-
true
(デフォルト値): ローカルの最適化が使用され、最適化されたコールに適用可能な場合はポリシーが適用されます(詳細は個々のポリシー・ファイルで定義します)。 -
false
: OWSMポリシー・レベルでのlocal-optimization
プロパティのデフォルト設定にか関係なく、ローカルの最適化は使用されません。この設定ではポリシーが強制的に適用されます。
たとえば、false
の次の設定ではoracle/wss_username_token_client_policy
が適用されます。
<binding.ws
port="http://xmlns.oracle.com/CalledBPELProcessApp_
jws/CalledBPELProcess/CalledBPELProcess#wsdl.endpoint(calledbpelprocess_client_
ep/CalledBPELProcess_pt)"
location="http://myhost.us.example.com:8001/soa-infra/services/default/CalledBPEL
Process!1.0/calledbpelprocess_client_ep?WSDL">
<wsp:PolicyReference URI="oracle/wss_username_token_client_policy"
orawsp:category="security"
orawsp:status="enabled"/>
<wsp:PolicyReference URI="oracle/log_policy"
orawsp:category="management"
orawsp:status="enabled"/>
<property
name="oracle.webservices.local.optimization">false</property>
</binding.ws>
ローカルの最適化の詳細は、「ローカルの最適化の構成」を参照してください。
デプロイ済のSOAコンポジット・アプリケーションのエクスポート
SOAコンポジット・アプリケーションのコンテンツをアーカイブJARファイルにエクスポートできます。ファイルには次のデータの一部またはすべてが含まれます。
-
元の設計時コンポジット。
-
ルール・ディクショナリとドメイン値マップ(DVM)のデプロイ後の変更。
-
バインディング・コンポーネントのプロパティなどのデプロイ後のプロパティの変更、監査レベル設定やペイロード検証ステータスなどのコンポジット・プロパティ、およびポリシー・アタッチメント。
ノート:
-
SOAコンポジット・アプリケーションのエクスポートは、現在は個々のSOAコンポジット・レベルでのみ可能です。
-
共有データは、コンポジット・エクスポートSOAアーカイブ(SAR)の一部としてエクスポートされません。
実行中のSOAコンポジット・アプリケーションをエクスポートするには:
分析データ、BPELセンサー・データ、コンポジット・センサー・データの収集の無効化および有効化
SOAコンポジット・アプリケーションの次の分析およびセンサーについて、データの収集を有効および無効にできます。
-
分析(BPMN測定マーカーおよびBPELモニターで構成):
次のタイプのデータを収集できます。
-
プロセスまたはプロセス内のセクションにおける特定の時点でのビジネス・インジケータの測定。
-
Oracle BAM Serverに送信され、分析やグラフィカル表示に使用されるBPELプロセス・メトリック。
-
-
BPELセンサー:
BPELのフォルト、アクティビティおよび変数のセンサー・データを収集できます。
-
コンポジット・センサー:
コンポジット・センサー・データを収集できます。
-
受信メッセージおよび送信メッセージを監視できます。
-
「フロー・インスタンス」ページの「検索オプション」セクションの「フロー・インスタンス」フィルタに、コンポジット・センサーの詳細を指定します。この処理によって、特定のインスタンスを検索できます。
-
受信メッセージおよび送信メッセージから計算されたJMSデータをパブリッシュします。
-
SOAインフラストラクチャ・レベルの分析データとセンサー・データの収集をグローバルに有効または無効にできます。また、コンポジット・レベルの分析データとセンサー・データの収集を個別に無効にできます。「SOAインフラストラクチャの共通プロパティ」ページまたは個々のSOAコンポジット・アプリケーション・ページの選択項目を無効または有効にする場合は、次の優先順位が発生します。
-
共通プロパティ・ページで選択を無効にすると、すべてのSOAコンポジット・アプリケーションでその選択に関するデータのコレクションが無効になります。たとえば、共通プロパティ・ページでコンポジット・センサーを無効にする場合、この変更の後に作成された任意のフロー・インスタンスに関するコンポジット・センサーの詳細は収集されません。
-
共通プロパティ・ページで選択を有効にすると、個々のSOAコンポジット・アプリケーション・レベルでその設定を無効にすることができます。たとえば、共通プロパティ・ページでコンポジット・センサーを有効にし、ホームページの「設定」→「分析とセンサーの有効化/無効化」で個々のSOAコンポジット・アプリケーション(LoanFlowなど)のコンポジット・センサーを無効にする場合、この変更の後にLoanFlow SOAコンポジット・アプリケーションの任意のインスタンスに対してコンポジット・センサーの詳細は収集されません。ただし、他のすべてのフロー・インスタンスはコンポジット・センサーの詳細を収集し続けます。
単一のコンポジットに対する特定のタイプのサービス・コンポーネントに定義されているセンサーを選択して有効化または無効化することはできません。ただし、「SOAインフラストラクチャの共通プロパティ」ページで、すべてのコンポジットについてサービス・コンポーネント・タイプ固有のセンサーをグローバルに無効にできます。
ノート:
「BPELサービス・エンジン・プロパティ」ページでBPELセンサーを無効にすると、「SOAインフラストラクチャの共通プロパティ」ページでBPELセンサーを無効にするのと同じ効果があります。
センサーの詳細は、『Oracle SOA SuiteでのSOAアプリケーションの開発』のOracle BPEL Process Managerのセンサーの使用方法に関する項を参照してください。
BPMN測定の詳細は、Oracle Business Process Managementを使用したビジネス・プロセスの作成を参照してください。
ランタイム・アプリケーションへのリンク
Oracle SOA Composerなどの一部のランタイム・アプリケーションには、「リンク」メイン・メニューが組み込まれており、他のランタイム・アプリケーションを参照できます。図11-1に、「リンク」メニューを示します。
リンクが表示されるのは、アプリケーションが稼働中でアクセス可能な場合のみです。リンクについて、次のランタイム・アプリケーションがサポートされています。
-
Oracle SOA Composer
-
Oracle BPM Worklist
-
Oracle Business Process Composer
-
Oracle Business Process Management Workspace
-
Oracle B2Bコンソール
-
Oracle SOA Suite for Healthcare
-
Oracle MFTコンソール
「リンク」メイン・メニューをカスタマイズして、他のアプリケーションのURLを表示することができます。
「リンク」メイン・メニューをカスタマイズするには: