プライマリ・コンテンツに移動
Oracle® Fusion Middleware Oracle SOA SuiteでのSOAアプリケーションの開発
12c (12.1.3)
E53007-05
目次へ移動
目次

前
次

53 コンポジット・センサーの定義

この章では、SOAコンポジット・アプリケーションでメッセージにトラッキング可能なフィールドを実装する手段を提供する、コンポジット・センサーを定義する方法について説明します。ここでは、ビジネス・イベントをサブスクライブしているバインディング・コンポーネントおよびサービス・コンポーネント上でセンサーを定義する方法について説明します。コンポジット・センサーの使用に関する制限と、Oracle SOAコンポーザの実行時にコンポジット・センサーを管理する方法についても説明します。

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

BPELプロセスにおけるアクティビティ、フォルト、変数の各センサーの詳細は、「センサーと分析の使用」を参照してください。

ビジネス・シナリオでのコンポジット・センサーの使用例は、『Oracle SOA Suiteの理解』を参照してください。

53.1 コンポジット・センサーの概要

コンポジット・センサーは、メッセージにトラッキング可能なフィールドを実装する手段を提供します。コンポジット・センサーを使用すると、次のタスクを実行できます。

  • 受信メッセージおよび送信メッセージを監視できます。

  • Oracle Enterprise Manager Fusion Middleware ControlのSOAインフラストラクチャ、パーティションおよびSOAコンポジット・アプリケーションの「フロー・インスタンス」ページにある検索ユーティリティで、コンポジット・センサーの詳細を指定します。このアクションにより、コンポジット・センサーを含む特定インスタンスの詳細を表示できます。

  • 受信メッセージおよび送信メッセージから計算されたJMSデータをパブリッシュします。

  • ビジネス・イベント・サブスクリプションによって開始されたコンポジット・インスタンスを追跡します。

コンポジット・センサーは、Oracle JDeveloperでビジネス・イベント・サブスクリプションがあるサービス・バインディング・コンポーネントおよび参照バインディング・コンポーネント、またはサービス・コンポーネントに定義します。この機能は、BPELプロセスの変数センサーに類似しています。実行時に、コンポジット・センサー・データはデータベースに維持されます。

Oracle SOAコンポーザの実行時にコンポジット・センサーを定義することもできます。Oracle SOAコンポーザの変更は実行時にすぐに取得されますが、Oracle JDeveloperを使用して行った変更ではSOAコンポジット・アプリケーションを再デプロイする必要があります。

Oracle Enterprise Manager Fusion Middleware Controlでのコンポジット・センサーの検索の詳細は、『Oracle SOA SuiteおよびOracle Business Process Management Suiteの管理』のSOAインフラストラクチャまたはパーティション・レベルでのビジネス・フロー・インスタンスのトラッキングに関する項を参照してください。

53.1.1 コンポジット・センサー使用上の制限

コンポジット・センサーの使用に関して、次の制限に注意してください。

  • XPath式の関数は、プロパティとともに使用できません。

  • 式によって定義されるコンポジット・センサーは常に、値を文字列として取得します。このため、センサー・タイプは常に文字列です。このアクションにより検索が可能になります。

    文字列から派生したXMLタイプを扱う際には、値を文字列として取得すると便利な場合があります。次の例に詳細を示します。

    <xs:element name="CardNum">
        <xs:simpleType>
            <xs:restriction base="xs:string">
                <xs:length value="16"/>
            </xs:restriction>
        </xs:simpleType>
    </xs:element>
    

    式が数値であっても、文字列として取得されます。<>=、これらの組合せなど、他の論理演算子を使用できません。

  • 変数によって定義されるコンポジット・センサーは、変数タイプを使用してセンサー・タイプを決定します。センサーは次のいずれかのタイプです。

    • STRING

    • NUMBER

    • DATE

    • DATE_TIME

    • 複合XML

  • コンポジット・センサーでは、Enterprise ManagerおよびJMSの2つのタイプのセンサー・アクションのみがサポートされます。

  • Webサービス・バインディングに対しては、ヘッダー・ベースのセンサーのみがサポートされています。

  • Oracle B2B、サービス・データ・オブジェクト(SDO)、Web Services Invocation Framework (WSIF)およびOracle Business Activity Monitoringのバインディングに対するセンサー・アクションは、サポートされていません。

  • フィルタリング用のXPath式を作成する場合は、ノードセットを返すすべての関数を文字列として明示的にキャストする必要があります。

    xpath20:upper-case(string($in.request/inp1:updateOrderStatus/inp1:orderStatus) ) = "PENDING"
    
  • ビジネス・イベントを公開するサービス・コンポーネント上でセンサーを構成することはできません。

  • ビジネス・イベント・ヘッダーに基づいたセンサーは許可されません(ペイロードのみが許可されます)。

  • PL/SQLサブスクリプションはサポートされていません。

53.2 コンポジット・センサーの追加

SOAコンポジット・エディタで、SOAコンポジット・アプリケーションの次のコンポーネントにセンサーを追加します。

  • サービス・バインディング・コンポーネントまたは参照バインディング・コンポーネント

  • ビジネス・イベントをサブスクライブしているBPELプロセスやOracle Mediatorなどのサービス・コンポーネント

53.2.1 コンポジット・センサーの追加方法

コンポジット・センサーを追加する手順は、次のとおりです。

  1. 次のいずれかのオプションを使用して、SOAコンポジット・エディタでコンポジット・センサーを追加します。

    1. 「公開されたサービス」または「外部参照」スイムレーン、あるいはビジネス・イベントをサブスクライブしているサービス・コンポーネントで特定のサービスまたは参照バインディング・コンポーネントを右クリックします。ビジネス・イベントをサブスクライブしているサービス・コンポーネントには、サブスクライブ済という語が含まれます。

    2. 「センサーの構成」を選択します。

      注意:

      「センサーの構成」オプションが表示されるためには、サービス・コンポーネントにすでにビジネス・イベントがサブスクライブされている必要があります。

      バインディング・コンポーネントを選択すると、「コンポジット・センサー」ダイアログに詳細が表示されます(図53-1を参照)。この例では、サービス・バインディング・コンポーネントが選択されています。

      図53-1 選択したバインディング・コンポーネントの「コンポジット・センサー」ダイアログ

      図53-1の説明が続きます
      「図53-1 選択したバインディング・コンポーネントの「コンポジット・センサー」ダイアログ」の説明

      サービス・コンポーネントを選択すると、図53-2に示す詳細が「コンポジット・センサー」ダイアログに表示されます。

      図53-2 選択したサービス・コンポーネントの「コンポジット・センサー」ダイアログ

      図53-2の説明が続きます
      「図53-2 選択したサービス・コンポーネントの「コンポジット・センサー」ダイアログ」の説明
    3. ダイアログで、バインディング・コンポーネントまたはサービス・コンポーネントを選択して、「追加」アイコンをクリックします。

    または

    1. 図53-3に示すように、SOAコンポジット・エディタ上部にある「コンポジット・センサー」アイコンをクリックします。

      図53-3 「コンポジット・センサー」アイコン

      図53-3の説明が続きます
      「図53-3 「コンポジット・センサー」アイコン」の説明

      図53-4に示すように、SOAコンポジット・アプリケーションの「コンポジット・センサー」ダイアログが表示されます。このオプションでは、SOAコンポジット・アプリケーションの、サブスクライブされたビジネス・イベントがあるすべてのサービスおよび参照のバインディング・コンポーネントとサービス・コンポーネントが表示されます。

      図53-4 「コンポジット・センサー」ダイアログ

      図53-4の説明が続きます
      「図53-4 「コンポジット・センサー」ダイアログ」の説明
    2. コンポジット・センサーを追加するサービス、参照またはビジネス・イベントを選択し、「追加」アイコンをクリックします。

    サービスなどのバインディング・コンポーネントを選択すると、図53-5に示すように「コンポジット・センサーの作成」ダイアログが表示されます。

    図53-5 サービス・バインディング・コンポーネントの「コンポジット・センサーの作成」ダイアログ

    図53-5の説明が続きます
    「図53-5 サービス・バインディング・コンポーネントの「コンポジット・センサーの作成」ダイアログの説明」

    ビジネス・イベント・サブスクリプションがあるサービス・コンポーネントを選択すると、図53-6に示すように「コンポジット・センサーの作成」ダイアログが表示されます。

    図53-6 サービス・コンポーネントの「コンポジット・センサーの作成」ダイアログ

    図53-6の説明が続きます
    「図53-6 サービス・コンポーネントの「コンポジット・センサーの作成」ダイアログの説明」
  2. 表53-1に記載されている詳細を入力します。


    表53-1 「コンポジット・センサーの作成」ダイアログ

    名前 説明

    名前

    コンポジット・センサーの名前を入力します。「式」フィールドの「編集」アイコンを使用可能にするには、名前を入力する必要があります。

    サービス

    サービス名が表示されます。このフィールドが表示されるのは、サービス・バインディング・コンポーネントに対するコンポジット・センサーを作成している場合のみです。このフィールドは編集できません。

    サービス・センサーは、サービスが外部または別のコンポジット・アプリケーションから受信するメッセージを監視します。

    参照

    参照名が表示されます。このフィールドが表示されるのは、参照バインディング・コンポーネントに対するコンポジット・センサーを作成している場合のみです。このフィールドは編集できません。

    参照センサーは、参照が外部または別のコンポジット・アプリケーションに送信するメッセージを監視します。

    操作

    サービスまたは参照のポート・タイプに対する操作を選択します。このフィールドは、サービスまたは参照バインディング・コンポーネントに対してのみ表示されます。

    イベント

    サービス・コンポーネントの名前が表示されます。このフィールドが表示されるのは、サービス・コンポーネントに対するコンポジット・センサーを作成している場合のみです。このフィールドは編集できません。

    イベント・センサーはビジネス・イベントによって開始されたコンポジット・インスタンスを追跡します。ビジネス・イベントごとに複数のセンサーを作成できます。

    イベント・タイプ

    「サブスクライブ」ビジネス・イベント・タイプが表示されます。このフィールドは編集できません。パブリッシュ・ビジネス・イベント・タイプはサポートされていません。

    「編集」アイコンをクリックすると、作成する式のタイプを選択するドロップダウン・リストが表示されます。

    • 変数: 変数に対する式の値を作成する場合に選択します。手順は、「変数の追加方法」を参照してください。

    • : XPath式を作成するための「式ビルダー」ダイアログを起動する場合に選択します。このアクションは、常に値を文字列として取得します。手順は、「式の追加方法」を参照してください。

    • プロパティ: 正規化されたメッセージ・ヘッダー・プロパティに対する式の値を作成する場合に選択します。これらは、invokeアクティビティ、receiveアクティビティ、replyアクティビティ、scopeアクティビティのOnEventブランチ(BPEL 2.0の場合)、およびpickアクティビティとscopeアクティビティ(BPEL 2.0の場合)のonMessageブランチの「プロパティ」タブの下に表示される同じプロパティです。手順は、「プロパティの追加方法」を参照してください。

    フィルタ

    「編集」アイコンをクリックすると、式用のXPathフィルタを作成する「式ビルダー」ダイアログが起動します。このフィールドを使用可能にするには、最初に式を作成する必要があります。

    たとえば、10,000を超える発注金額をトラッキングする式を作成できます。

    $in.inDict/tns:inDict/ns2:KeyValueOfstringstring/ns2:Value > 10000.00

    コンポジット・センサー・アクション

    サポートされているセンサー・アクションを表示します。この機能を使用すると、ランタイム・センサー・データを格納できます。「Enterprise Manager」「JMSキュー」または「JMSトピック」のいずれかとの両方を選択できます。

    • Enterprise Manager

      選択すると、Oracle Enterprise Manager Fusion Middleware ControlのSOAコンポジット・アプリケーションの「フロー・インスタンス」タブでランタイム・センサー・データを検索できるようになります。この選択は、前のリリースのDBSensorActionの選択と同じです。

      注意: 「Enterprise Manager」が選択されている場合、センサー・データはトラッキング可能フィールド表に送られます。選択されていない場合、データは送られません。ただし、いずれの場合も、Oracle Enterprise Manager Fusion Middleware Controlにはこのフィールドが表示され、センサーに基づいたコンポジット・インスタンスの検索が可能です。

      詳細は、『Oracle SOA SuiteおよびOracle Business Process Management Suiteの管理』を参照してください。

    • JMSキュー

      コンポジット・センサー・データ(XMLペイロード)をJMSキューに格納する場合に選択します。JMSコネクション・ファクトリおよびキュー名を指定する必要があります。

    • JMSトピック

      コンポジット・センサー・データ(XMLペイロード)をJMSトピックに格納する場合に選択します。JMSコネクション・ファクトリおよびトピック名を指定する必要があります。

    注意: 「JMSキュー」および「JMSトピック」を選択すると、コンポジット・センサー・データ(XMLペイロード)がOracle Business Activity Monitoring (BAM)やOracle Complex Event Processingなどの他のコンシューマでも使用できるようになります。どちらを選択した場合も、Oracle WebLogic ServerによるネイティブのJMSサポートが使用され、『テクノロジ・アダプタの理解』の説明にあるようなOracle SOA Suite JMSアダプタは使用されません。JMSメッセージはOracle WebLogic Server管理コンソールで表示できます。


  3. 完了後に「OK」をクリックします。

    サービスまたは参照バインディング・コンポーネントでは、図53-7に示すように、コンポジット・センサー・アイコンが右上隅に表示されます。

    図53-7 バインディング・コンポーネントのセンサー・アイコン

    図53-7の説明が続きます
    「図53-7 バインディング・コンポーネントのセンサー・アイコンの説明」

    サービス・コンポーネントでは、図53-8に示すように、コンポジット・センサー・アイコンも右上隅に表示されます。

    図53-8 サービス・コンポーネントのセンサー・アイコン

    図53-8の説明が続きます
    「図53-8 サービス・コンポーネントのセンサー・アイコン」の説明
  4. コンポジット・センサー・アイコンの上にカーソルを置くと、コンポジット・センサーに関する詳細が表示されます。

53.2.1.1 変数の追加方法

図53-9に示す「XPath式の選択」では、トラッキングする要素を選択できます。

変数を追加する手順は、次のとおりです。

  1. ツリーを開き、トラッキングする要素を選択します(この例では、注文ID)。
  2. 完了後に「OK」をクリックします。

53.2.1.2 式の追加方法

図53-10に示す「式ビルダー」ダイアログでは、トラッキングする式を作成できます。

式を追加する手順は、次のとおりです。

  1. トラッキングする要素のXPath式を作成します。
  2. 完了後に「OK」をクリックします。

53.2.1.3 プロパティの追加方法

図53-11に示す「プロパティの選択」ダイアログでは、トラッキングする正規化されたメッセージ・ヘッダー・プロパティを選択できます。

プロパティを追加する手順は、次のとおりです。

  1. トラッキングする正規化されたメッセージ・ヘッダー・プロパティを選択します。
  2. 完了後に「OK」をクリックします。

正規化されたメッセージの詳細は、「メッセージ・ヘッダーを介した正規化メッセージ・プロパティの伝播」を参照してください。

53.2.2 重複するコンポジット・センサー名に関する必知事項

コンポジット・センサーに重複する名前を使用する場合は、次の詳細に注意してください。

  • 重複する名前を持つコンポジット・センサーを作成すると、定義の内容全体が比較されます。重複する名前は、1つ以上の追加パラメータが異なる場合に許可されます(たとえば、異なる構成タイプや異なる式、フィルタ、操作名など)。重複する名前が許可されるためには、定義で何かが異なっている必要があります。

  • 重複するセンサー定義がある場合は、最後に実行されたセンサー値のみが維持されます。このため、相互に排他的なパスに対してこのタイプの構成を使用できます(たとえば、コンポジットはサービス1またはサービス2によって起動されます)。したがって、両方のサービスで同じセンサー名を定義できます。ただし、サービス1と参照1に同じ名前を定義した場合、参照1のセンサー値(最後に実行されたセンサー)のみが格納されます。

  • 通常は、同じ名前の複数のセンサーを使用して、異なるソースから抽出された同じ論理エンティティを指します(たとえば、Oracle Enterprise Manager Fusion Middleware Controlでは、最終的なセンサー値が表示されます)。このため、異なるソースから電子メール値と社会保障値を抽出する場合に同じセンサー名を使用すると、混乱を招く可能性があります。

  • センサー・アクションは、同じセンサー名のすべての発生に適用されます。この状況は、最近定義された同じ名前のセンサーのセンサー・アクションが優先されることを意味します。

次の例のsensor.xmlに示すシナリオでは:

  • Service1という名前に最初の2つのセンサーは同一です。さらに、構成タイプはどちらもserviceConfig(サービス・バインディング・コンポーネントで定義されたコンポジット・センサー)です。したがって、センサーは1つのエントリになります(2番目のセンサーは無視されます)。

  • Service1という名前の3番目のセンサーは、異なる構成タイプeventConfig(ビジネス・イベントで定義されたコンポジット・センサー)を持ちます。したがって、このセンサーは別のエントリで表されます。

  • PurchaseOrder Idという名前の2つのセンサーは、構成タイプが異なります(eventConfigおよびserviceConfig)。したがって、これらは別のエントリで表されます。

  • PurchaseOrderという名前の2つのセンサーは、構成タイプは同じ(eventConfig)ですが、式は異なります。したがって、これらは別のエントリで表されます。

<sensors xmlns="http://xmlns.oracle.com/bpel/sensor">
   <sensor sensorName="Service1" kind="service" target="undefined" filter="">
      <serviceConfig service="OrderPublisher_ep"
 expression="$in.property.tracking.ecid" operation="execute"
 outputDataType="string" outputNamespace="http://www.w3.org/2001/XMLSchema"/>
   </sensor>
   <sensor sensorName="Service1" kind="service" target="undefined" filter="">
      <serviceConfig service="OrderPublisher_ep"
 expression="$in.property.tracking.ecid" operation="execute"
 outputDataType="string" outputNamespace="http://www.w3.org/2001/XMLSchema"/>
   </sensor>
   <sensor sensorName="Service1" kind="event" target="undefined" filter=""
 xmlns:po="http://www.mycompany.com/ns/order">
      <eventConfig component="EventMediator"
 expression="$in/po:PurchaseOrder/po:OrderID"
 event="{http://mycompany.com/events/orders}OrderReceivedEvent"
 outputDataType="string" outputNamespace="http://www.w3.org/2001/XMLSchema"/>
   <sensor sensorName="Event1" kind="event" target="undefined" filter="">
      <eventConfig component="EventMediator" actionType="Subscribe"
 expression="$in.property.tracking.ecid"
 event="{http://mycompany.com/events/orders}OrderReceivedEvent"
 outputDataType="string" outputNamespace="http://www.w3.org/2001/XMLSchema"/>
   </sensor>
   <sensor sensorName="PurchaseOrder Id" kind="event" target="undefined" filter=""
 xmlns:po="http://www.mycompany.com/ns/order">
      <eventConfig component="EventMediator"
 expression="$in/po:PurchaseOrder/po:OrderID"
 event="{http://mycompany.com/events/orders}OrderReceivedEvent"
 outputDataType="string" outputNamespace="http://www.w3.org/2001/XMLSchema"/>
   </sensor>
  <sensor sensorName="PurchaseOrder Id" kind="service" target="undefined"
 filter="">
      <serviceConfig service="OrderPublisher_ep"
 expression="$in.property.tracking.ecid" operation="execute"
 outputDataType="string" outputNamespace="http://www.w3.org/2001/XMLSchema"/>
   </sensor>
   <sensor sensorName="PurchaseOrder" kind="event" target="undefined" filter=""
 xmlns:po="http://www.mycompany.com/ns/order">
      <eventConfig component="EventMediator" expression="$in/po:PurchaseOrder"
 event="{http://mycompany.com/events/orders}OrderReceivedEvent"
 outputDataType="PurchaseOrder"
 outputNamespace="http://mycompany.com/events/orders"/>
   </sensor>
   <sensor sensorName="PurchaseOrder" kind="event" target="undefined" filter=""
 xmlns:po="http://www.mycompany.com/ns/order">
      <eventConfig component="EventMediator"
 expression="$in/po:PurchaseOrder/po:OrderID"
 event="{http://mycompany.com/events/orders}OrderReceivedEvent"
 outputDataType="string" outputNamespace="http://www.w3.org/2001/XMLSchema"/>
   </sensor>
   </sensor>
</sensors>

53.3 実行時のコンポジット・センサー・データの監視

実行時に、Oracle Enterprise Manager Fusion Middleware Controlでコンポジット・センサー・データを監視できます。

  • コンポジット・センサー・データは、SOAコンポジット・アプリケーションのフローのトレースに表示されます。

  • 「フロー・インスタンス」ページで、コンポジット・センサーのデータをSOAインフラストラクチャ、個々のパーティション、およびSOAコンポジット・アプリケーションのレベルで検索できます。

Oracle Enterprise Manager Fusion Middleware Controlでのコンポジット・センサーの検索の詳細は、『Oracle SOA SuiteおよびOracle Business Process Management Suiteの管理』のSOAインフラストラクチャ・レベルでのSOAコンポジット・アプリケーション・インスタンスの監視と削除に関する項、およびアプリケーション・ホームページからのSOAコンポジット・アプリケーション・インスタンスの監視と削除に関する項を参照してください。

53.4 Oracle SOAコンポーザからのコンポジット・センサーの実行時の作成および管理

SOAコンポジット・アプリケーションを再デプロイせずに、Oracle SOAコンポーザからコンポジット・センサーの作成、更新および削除を実行時にできます。次の例では、コンポジット・センサーを作成する方法を説明します。コンポジット・センサーに対する変更は、パッチを介して新しいバージョンのコンポジットに継承できます。

コンポジット・センサーに重複する名前を使用する場合の問題について理解していることを確認してください。詳細は、「重複するコンポジット・センサー名に関する必知事項」を参照してください。

Oracle SOAコンポーザから実行時にコンポジット・センサーを作成および管理する手順は、次のとおりです。

  1. Oracle SOAコンポーザにログインします。
    http://host:soa_server_port/soa/composer
    
  2. 左側のナビゲータを展開し、変更を行うコンポジットをダブルクリックします。図53-12に詳細を示します。

    図53-12 Oracle SOAコンポーザ

    図53-12の説明が続きます
    「図53-12 Oracle SOAコンポーザ」の説明
  3. 「セッションの作成」をクリックします。

    ページがリフレッシュされ、「追加」「編集」、および「削除」の各アイコンが表示されます。

  4. 「追加」アイコンをクリックして、次のオプションを選択します。
    • サービス・センサーの作成: サービス・バインディング・コンポーネントのコールからデータを取得します。

    • 参照センサーの作成: 参照バインディング・コンポーネントのコールからデータを取得します。

    • イベント・センサーの作成: ビジネス・イベントにサブスクライブしたサービス・コンポーネントからデータを取得します。

    この例では、サービス・バインディング・コンポーネントのコールからデータを取得するので「サービス・センサーの作成」を選択します。図53-13に詳細を示します。

    図53-13 コンポジット・センサーの作成

    図53-13の説明が続きます
    「図53-13 コンポジット・センサーの作成」の説明

    「コンポジット・センサーの作成」ダイアログが表示されます。

  5. 「式」セクションの「編集」アイコンをクリックして、次のオプションを選択します。
    • 変数: 変数に対する式の値を作成する場合に選択します。

    • : XPath式を作成するための「式ビルダー」ダイアログを起動する場合に選択します。このアクションは、常に値を文字列として取得します。

    • プロパティ: 正規化されたメッセージ・ヘッダー・プロパティに対する式の値を作成する場合に選択します。これらは、invokeアクティビティ、receiveアクティビティ、replyアクティビティ、scopeアクティビティのOnEventブランチ(BPEL 2.0の場合)、およびpickアクティビティとscopeアクティビティ(BPEL 2.0の場合)のonMessageブランチの「プロパティ」タブの下に表示される同じプロパティです。

    この例では、XPath式を作成するために「式」を選択します。

    図53-14に詳細を示します。

    図53-14 「コンポジット・センサーの作成」ダイアログのXPath式の選択

    図53-14の説明が続きます
    「図53-14 「コンポジット・センサーの作成」ダイアログのXPath式の選択」の説明

    変数、式およびヘッダーのプロパティの選択項目は、表53-1で説明したOracle JDeveloperの「コンポジット・センサーの作成」ダイアログと同じです。

    「式ビルダー」ダイアログが表示されます。

  6. XPath式を作成し、「OK」をクリックします。作成したカスタムXPath式を選択することもできます。

    「コンポジット・センサーの作成」ダイアログに戻ります。

  7. このコンポジット・センサーをOracle Enterprise Manager Fusion Middleware ControlのSOAコンポジット・アプリケーションの「フロー・インスタンス」ページで検索およびトラッキング可能なフィールドにするために、図53-15「Enterprise Manager」チェック・ボックスを選択して、「OK」をクリックします。このチェック・ボックスを選択しない場合は、コンポジット・センサーは検索可能になりません。

    図53-15 コンポジット・センサーの作成

    図53-15の説明が続きます
    「図53-15 コンポジット・センサーの作成」の説明

    新しいコンポジット・センサーが表示されます。表示内容には、センサー名、センサーの定義を含むコンポーネントのタイプと名前、センサーに対して定義されたXPath式またはフィルタ、実行時センサー・データのストレージ・ロケーション(Enterprise ManagerまたはJMSキューとトピック)、およびJMSターゲットが含まれます。図53-16に詳細を示します。

    図53-16 Oracle SOAコンポーザのコンポジット・センサー

    図53-16の説明が続きます
    「図53-16 Oracle SOAコンポーザのコンポジット・センサー」の説明
  8. 「保存」をクリックします。
  9. 右上隅にある「パブリッシュ」をクリックして、このセッションをパブリッシュします。図53-17に詳細を示します。

    図53-17 「パブリッシュ」ボタン

    図53-17の説明が続きます
    「図53-17 「パブリッシュ」ボタン」の説明
  10. プロンプトが出されたらセッションのオプションの説明を入力して、「OK」をクリックします。

    コンポジット・センサーは、デプロイされたSOAコンポジット・アプリケーション内で自動的に実行されます。

  11. Oracle Enterprise Manager Fusion Middleware Controlの「Webサービスのテスト」ページに進んで、新規インスタンスを起動します。「Webサービスのテスト」ページの詳細は、『Oracle SOA SuiteおよびOracle Business Process Management Suiteの管理』のSOAコンポジット・アプリケーションのテスト・インスタンスの開始に関する項を参照してください。
  12. コンポジット・センサーを含むSOAコンポジット・アプリケーションの新規インスタンスを作成して(この例では、名前はloanAmount)、「起動」をクリックします。
  13. SOAインフラストラクチャの「フロー・インスタンス」ページに進みます。
  14. 「検索オプション」セクションの「フロー・インスタンス」部分の「センサー名」フィールドで、追加したコンポジット・センサーを指定します。図53-18に詳細を示します。

    図53-18 検索可能フィールド

    図53-18の説明が続きます
    「図53-18 検索可能フィールド」の説明
  15. 「検索」をクリックします。
  16. 「検索結果」テーブルでSOAコンポジット・センサーのインスタンスを選択して、「詳細の表示」をクリックします。

    インスタンスの詳細は、ページ下部にある「フォルト」「コンポジット・センサー値」「コンポジット」および「リシーケンス・グループ」の各タブに表示されます。

  17. 「コンポジット・センサー値」タブをクリックします。

    このタブには、選択したビジネス・フロー内で検出されたコンポジット・センサーの値が表示されます。

    • 名前: コンポジット・センサー名を表示します(この例では、loanAmount)。

    • : コンポジット・センサーに割り当てられた値を表示します。

    • 場所: コンポジット・センサーが定義されているサービス・バインディング・コンポーネント、参照バインディング・コンポーネント、またはサービス・コンポーネントが表示されます。

    • コンポジット: コンポジット・センサーが定義されているSOAコンポジット・アプリケーションが表示されます。

  18. コンポジット・センサーを編集または削除する場合は、図53-16に示すOracle SOAコンポーザに戻って、「セッションの作成」をクリックします。

    ページが再びリフレッシュされ、「追加」「編集」、および「削除」の各アイコンが表示されます。

  19. Oracle WebLogic Server起動スクリプト・システム・プロパティoracle.soacomposer.composite.showSensorXmlFilesを設定すると、ページの下部に「センサーXMLファイルを表示します」ボタンが表示されます。
  20. このプロパティをクリックすると、sensor.xmlおよびsensor-action.xmlの内容が表示されます。この機能は、これら両方をテストして、意図したとおりになっているか確認するために便利です。

    このSOAコンポジット・アプリケーションを後でOracle JDeveloperにインポートする場合は、Oracle SOAコンポーザの実行時に作成されたコンポジット・センサーが表示されます。

53.4.1 Oracle SOAコンポーザでのコンポジット・センサーの変更の表示に関する必知事項

Oracle SOAコンポーザでコンポジット・センサーを追加または削除した場合は、変更を確認するには、「コンポジット・センサー」表の上にあるそのプロジェクトのタブを閉じてから再度開く必要があります。次に例を示します。

  1. コンポジット・センサーでSOAコンポジット・アプリケーションを作成およびデプロイします(この例では、p1という名前です)。
  2. Oracle SOAコンポーザにログインして、ナビゲータでコンポジットを選択します。

    p1コンポジット・センサーが表示されます。

  3. コンポジットに追加のコンポジット・センターを作成し(この例では、p2という名前)、再デプロイします。
  4. Oracle SOAコンポーザのナビゲータ・ツリーで、「リフレッシュ」ボタンをクリックして、コンポジットを選択します。

    コンポジット・センサーp1のみが表示され、p2は表示されません。

  5. 「コンポジット・センサー」ページ上部のプロジェクトのタブを閉じ(図53-19を参照)、ナビゲータでコンポジットを選択して再度開きます。

    図53-19 「コンポジット・センサー」ページの「コンポジット」タブ

    図53-19の説明が続きます
    「図53-19 「コンポジット・センサー」ページの「コンポジット」タブ」の説明

    これによって、コンポジット・センターp1とp2が表示されるようになります。