この章では、SOAコンポジット・アプリケーションでコンポジット・センサーを定義する方法について説明します。
項目は次のとおりです。
第47.3項「実行時のコンポジット・センサー・データの監視」
注意: このリリースでは、データベース・センサー・アクションのみがサポートされています。センサー・アクションの詳細は、第18章「Oracle BPEL Process Managerセンサーの使用」を参照してください。 |
コンポジット・センサーは、メッセージにトラッキング可能なフィールドを実装する手段を提供します。コンポジット・センサーを使用すると、次のタスクを実行できます。
受信メッセージおよび送信メッセージを監視できます。
Oracle Enterprise Manager Fusion Middleware Controlコンソールで、SOAコンポジット・アプリケーションの「インスタンス」ページにある検索ユーティリティで、コンポジット・センサーの詳細を指定できます。この処理によって、特定のインスタンスを検索できます。
コンポジット・センサーは、Oracle JDeveloperでサービス・バインディング・コンポーネントおよび参照バインディング・コンポーネントに定義します。この機能は、BPELプロセスの変数センサーに類似しています。実行時に、コンポジット・センサー・データはデータベースに維持されます。
コンポジット・センサーの使用に関して、次の制限に注意してください。
関数はペイロードでのみ使用できます。たとえば、concat()
などのXPath関数はプロパティでは使用できません。
式を使用するコンポジット・センサーは常に、値を文字列として取得します。この処理のため、検索で使用できるのはlike
比較演算子のみです。また、値が数値の場合でも、他の<
、>
、=
など論理演算子やこれらの組合せを使用することはできません。
コンポジット・センサーは、事前定義のDBSensorActionのみをサポートしています。
Webサービス・バインディングに対しては、ヘッダー・ベースのセンサーのみがサポートされています。
Oracle B2B、サービス・データ・オブジェクト(SDO)、Web Services Invocation Framework(WSIF)およびOracle Business Activity Monitoringのバインディングに対するセンサーは、サポートされていません。
センサー値の型は次のいずれかになります。
次のスカラー型
STRING
NUMBER
DATE
DATE_TIME
複合XML要素
フィルタリング用のXPath式を作成する場合は、ノードセットを返すすべての関数を文字列として明示的にキャストする必要があります。
xpath20:upper-case(string($in.request/inp1:updateOrderStatus/inp1:orderStatus) ) = "PENDING"
SOAコンポジット・エディタで、SOAコンポジット・アプリケーションのサービス・バインディング・コンポーネントまたは参照バインディング・コンポーネントにセンサーを追加します。
コンポジット・センサーを追加する手順は、次のとおりです。
次のいずれかのオプションを使用して、SOAコンポジット・エディタでコンポジット・センサーを追加します。
コンポジット・センサーを追加する特定のサービス・バインディング・コンポーネントまたは参照バインディング・コンポーネントを右クリックして、「コンポジット・センサー」を選択します。
SOAコンポジット・エディタ上部にある「コンポジット・センサー」アイコンをクリックします。
図47-2に示すように、「コンポジット・センサー」ダイアログが表示されます。
「コンポジット・センサー」フォルダを選択して、「追加」アイコンをクリックします。
図47-3に示すように、「コンポジット・センサーの作成」ダイアログが表示されます。
表47-1に記載されている詳細を入力します。
表47-1 「コンポジット・センサーの作成」ダイアログ
名前 | 説明 |
---|---|
名前 |
コンポジット・センサーの名前を入力します。「式」フィールドの「編集」アイコンを使用可能にするには、名前を入力する必要があります。 |
サービス |
サービス名が表示されます。このフィールドが表示されるのは、サービス・バインディング・コンポーネントに対するコンポジット・センサーを作成している場合のみです。このフィールドは編集できません。 サービス・センサーは、サービスが外部または別のコンポジット・アプリケーションから受信するメッセージを監視します。 |
参照 |
参照名が表示されます。このフィールドが表示されるのは、参照バインディング・コンポーネントに対するコンポジット・センサーを作成している場合のみです。このフィールドは編集できません。 参照センサーは、参照が外部または別のコンポジット・アプリケーションに送信するメッセージを監視します。 |
操作 |
サービスまたは参照のポート・タイプに対する操作を選択します。 |
式 |
「編集」アイコンをクリックすると、作成する式のタイプを選択するドロップダウン・リストが起動します。
|
フィルタ |
「編集」アイコンをクリックすると、式用のXPathフィルタを作成する「式ビルダー」ダイアログが起動します。このフィールドを使用可能にするには、最初に式を作成する必要があります。 たとえば、 $in.inDict/tns:inDict/ns2:KeyValueOfstringstring/ns2:Value > 10000.00 |
コンポジット・センサー・アクション |
サポートされているセンサー・アクション(DBSensorAction)が表示されます。この機能を使用すると、ランタイム・センサー・データをデータベースに格納できます。このリリースでは、コンポジット・センサーに対してこのセンサー・アクション・タイプのみがサポートされています。このフィールドは編集できません。 |
「適用」をクリックしてコンポジット・センサーを追加します。
完了後に「OK」をクリックします。
サービス・バインディング・コンポーネントまたは参照バインディング・コンポーネントに、「センサー」アイコンが表示されます。
図47-5に示す「XPath式の選択」では、トラッキングする要素を選択できます。
変数を追加する手順は、次のとおりです。
ツリーを開き、トラッキングする要素を選択します。
完了後に「OK」をクリックします。
図47-6に示す「プロパティの選択」では、トラッキングする式を作成できます。
式を追加する手順は、次のとおりです。
トラッキングする要素のXPath式を作成します。
完了後に「OK」をクリックします。
図47-7に示す「プロパティの選択」では、トラッキングする正規化されたメッセージ・ヘッダー・プロパティを選択できます。
プロパティを追加する手順は、次のとおりです。
トラッキングする正規化されたメッセージ・ヘッダー・プロパティを選択します。
完了後に「OK」をクリックします。
実行時に、Oracle Enterprise Manager Fusion Middleware Controlコンソールでコンポジット・センサー・データを監視できます。
コンポジット・センサー・データは、SOAコンポジット・アプリケーションのフローのトレースに表示されます。
コンポジット・センサー・データは、SOAコンポジット・アプリケーションの「インスタンス」ページで検索できます。
詳細は、『Oracle Fusion Middleware Oracle SOA SuiteおよびOracle Business Process Management Suite管理者ガイド』を参照してください。