- Oracle SOAスイートでのSOAアプリケーションの開発
- 高度なトピック
- コンポジット・センサーの定義
- Oracle SOAコンポーザからのコンポジット・センサーの実行時の作成および管理
Oracle SOAコンポーザからのコンポジット・センサーの実行時の作成および管理
SOAコンポジット・アプリケーションを再デプロイせずに、Oracle SOAコンポーザからコンポジット・センサーの作成、更新および削除を実行時にできます。次の例では、コンポジット・センサーを作成する方法を説明します。コンポジット・センサーに対する変更は、パッチを介して新しいバージョンのコンポジットに継承できます。
コンポジット・センサーに重複する名前を使用する場合の問題について理解していることを確認してください。詳細は、「重複するコンポジット・センサー名に関する必知事項」を参照してください。
Oracle SOAコンポーザから実行時にコンポジット・センサーを作成および管理するには:
- Oracle SOAコンポーザにログインします。
http://host:soa_server_port/soa/composer
- 左側のナビゲータを展開し、変更を行うコンポジットをダブルクリックします。図54-12に詳細を示します。
- 「セッションの作成」をクリックします。
ページがリフレッシュされ、「追加」、「編集」、および「削除」の各アイコンが表示されます。
- 「追加」アイコンをクリックして、次のオプションを選択します。
-
サービス・センサーの作成: サービス・バインディング・コンポーネントのコールからデータを取得します。
-
参照センサーの作成: 参照バインディング・コンポーネントのコールからデータを取得します。
-
イベント・センサーの作成: ビジネス・イベントにサブスクライブしたサービス・コンポーネントからデータを取得します。
この例では、サービス・バインディング・コンポーネントのコールからデータを取得するので「サービス・センサーの作成」を選択します。図54-13に詳細を示します。
「コンポジット・センサーの作成」ダイアログが表示されます。
-
- 「式」セクションの「編集」アイコンをクリックして、次のオプションを選択します。
-
変数: 変数に対する式の値を作成する場合に選択します。
-
式: XPath式を作成するための「式ビルダー」ダイアログを起動する場合に選択します。このアクションは、常に値を文字列として取得します。
-
プロパティ: 正規化されたメッセージ・ヘッダー・プロパティに対する式の値を作成する場合に選択します。これらは、invokeアクティビティ、receiveアクティビティ、replyアクティビティ、scopeアクティビティのOnEventブランチ(BPEL 2.0の場合)、およびpickアクティビティとscopeアクティビティ(BPEL 2.0の場合)のonMessageブランチの「プロパティ」タブの下に表示される同じプロパティです。
この例では、XPath式を作成するために「式」を選択します。
図54-14に詳細を示します。
変数、式およびヘッダーのプロパティの選択項目は、表54-1で説明したOracle JDeveloperの「コンポジット・センサーの作成」ダイアログと同じです。
「式ビルダー」ダイアログが表示されます。
-
- XPath式を作成し、「OK」をクリックします。作成したカスタムXPath式を選択することもできます。
「コンポジット・センサーの作成」ダイアログに戻ります。
- このコンポジット・センサーをOracle Enterprise Manager Fusion Middleware ControlのSOAコンポジット・アプリケーションの「フロー・インスタンス」ページで検索およびトラッキング可能なフィールドにするために、図54-15の「Enterprise Manager」チェック・ボックスを選択して、「OK」をクリックします。このチェック・ボックスを選択しない場合は、コンポジット・センサーは検索可能になりません。
新しいコンポジット・センサーが表示されます。表示内容には、センサー名、センサーの定義を含むコンポーネントのタイプと名前、センサーに対して定義されたXPath式またはフィルタ、実行時センサー・データのストレージ・ロケーション(Enterprise ManagerまたはJMSキューとトピック)、およびJMSターゲットが含まれます。図54-16に詳細を示します。
- 「保存」をクリックします。
- 右上隅にある「パブリッシュ」をクリックして、このセッションをパブリッシュします。図54-17に詳細を示します。
- プロンプトが出されたらセッションのオプションの説明を入力して、「OK」をクリックします。
コンポジット・センサーは、デプロイされたSOAコンポジット・アプリケーション内で自動的に実行されます。
- Oracle Enterprise Manager Fusion Middleware Controlの「Webサービスのテスト」ページに進んで、新規インスタンスを起動します。「Webサービスのテスト」ページの詳細は、『Oracle SOA SuiteおよびOracle Business Process Management Suiteの管理』のSOAコンポジット・アプリケーションのテスト・インスタンスの開始に関する項を参照してください。
- コンポジット・センサーを含むSOAコンポジット・アプリケーションの新規インスタンスを作成して(この例では、名前はloanAmount)、「起動」をクリックします。
- SOAインフラストラクチャの「フロー・インスタンス」ページに進みます。
- 「検索オプション」セクションの「フロー・インスタンス」部分の「センサー名」フィールドで、追加したコンポジット・センサーを指定します。図54-18に詳細を示します。
- 「検索」をクリックします。
- 「検索結果」テーブルでSOAコンポジット・センサーのインスタンスを選択して、「詳細の表示」をクリックします。
インスタンスの詳細は、ページ下部にある「フォルト」、「コンポジット・センサー値」、「コンポジット」および「リシーケンス・グループ」の各タブに表示されます。
- 「コンポジット・センサー値」タブをクリックします。
このタブには、選択したビジネス・フロー内で検出されたコンポジット・センサーの値が表示されます。
-
名前: コンポジット・センサー名を表示します(この例では、loanAmount)。
-
値: コンポジット・センサーに割り当てられた値を表示します。
-
場所: コンポジット・センサーが定義されているサービス・バインディング・コンポーネント、参照バインディング・コンポーネント、またはサービス・コンポーネントが表示されます。
-
コンポジット: コンポジット・センサーが定義されているSOAコンポジット・アプリケーションが表示されます。
-
- コンポジット・センサーを編集または削除する場合は、図54-16に示すOracle SOAコンポーザに戻って、「セッションの作成」をクリックします。
ページが再びリフレッシュされ、「追加」、「編集」、および「削除」の各アイコンが表示されます。
- Oracle WebLogic Server起動スクリプト・システム・プロパティ
oracle.soacomposer.composite.showSensorXmlFiles
を設定すると、ページの下部に「センサーXMLファイルを表示します」ボタンが表示されます。 - このプロパティをクリックすると、
sensor.xml
およびsensor-action.xml
の内容が表示されます。この機能は、これら両方をテストして、意図したとおりになっているか確認するために便利です。このSOAコンポジット・アプリケーションを後でOracle JDeveloperにインポートする場合は、Oracle SOAコンポーザの実行時に作成されたコンポジット・センサーが表示されます。