12 SOAコンポジット・アプリケーションのビジネス・フロー・インスタンスの管理
この章の内容は次のとおりです。
ビジネス・フローのテスト・インスタンスの起動
SOAコンポジット・アプリケーションのテスト・インスタンスを起動するには:
-
ナビゲータで、「SOA」を展開して、「soa-infra (server_name)」をクリックします。
-
「SOAインフラ」ページで「デプロイ済コンポジット」をクリックしてから、「コンポジット」をクリックします。
-
コンポジットのホーム・ページ上部で、「テスト」をクリックします。
ノート:
次の場合は、「テスト」ボタンが無効になります。
-
SOAコンポジット・アプリケーションのリビジョンが停止状態またはリタイア状態の場合。
-
アプリケーションに対して使用可能なWebサービスがない場合。このページからテストできるのは、Webサービス・バインディングのあるサービスを持つコンポジットのみです。
-
-
コンポジットに複数のサービスが含まれる場合は、「テスト」ボタンにドロップダウン・リストが表示され、テストするサービスを選択できます。
インスタンスを起動するための「Webサービスのテスト」ページが表示されます。
このページには、インスタンスを起動するための様々なオプションが用意されています。少なくとも、使用するXMLペイロード・データをページの下部にある「引数の入力」セクションに指定する必要があります。このページのフィールドの詳細は、右上隅の「weblogic」メニューから「ヘルプ」→「このページのヘルプ」の順に選択します。
「Webサービスのテスト」ページの使用方法の詳細は、Webサービスの管理を参照してください。
テスト対象として選択したサービスに基づいて、WSDLファイルおよびエンドポイントURLが自動的に移入されます。エンドポイントURLはWSDLから導出され、そのサービスを異なる場所で起動する場合はオーバーライドできます。選択したサービスに複数のポートがある場合は、ドロップダウン・リストが表示されます。そうでない場合は、現在のサービスのポートが表示されます。
フィールド 説明 WSDLまたはWADL解析
WSDLまたはWeb Application Description Language (WADL)ファイルを変更する場合は、このリンクをクリックしてファイルをリロードします。
WADLファイルは、REST操作で使用します。詳細は、『Oracle SOA SuiteでのSOAアプリケーションの開発』のSOAコンポジット・アプリケーションでのREST操作の統合に関する項を参照してください。
リビジョン番号が含まれていないWSDL URLは、デフォルトのコンポジット・アプリケーションによって処理されます。たとえば、
HelloWorld
という名前のコンポジット・アプリケーションにリビジョンが2つ存在する場合は、次のエンドポイントが公開されます。-
http://
host
:
port
/soa-infra/services/default/HelloWorld!1.0/client
-
http://
host
:
port
/soa-infra/services/default/HelloWorld!2.0/client
ただし、Webサービスの起動用に指定したWSDLにリビジョンの詳細が含まれていない場合(たとえば、
http://
host
:
port
/soa-infra/services/default/HelloWorld/client
)は、デフォルトとして設定されたコンポジット・リビジョンによって処理されます。WSDLまたはWADLアクセスのためのHTTP Basic認証オプション
クリックすると、ユーザー名とパスワード資格証明をHTTPトランスポート・ヘッダーに挿入できます。「ユーザー名」および「パスワード」フィールドは両方とも必須です。
操作
「操作」メニューからテストする操作を選択します。使用可能なオプションはWSDLにより決定されます。
RESTサービスをテストするには、GETまたはPOSTサービス・ポート操作を選択します。
エンドポイントURLの編集
クリックすると、エンドポイントURLを編集できます。
-
-
次の各フィールドではデフォルト値をそのまま使用するか、使用するテスト環境に適した値を入力します。
「Webサービスのテスト」ページの下部には、「リクエスト」タブがあります。このタブでは、セキュリティ、サービスのクオリティ、HTTPトランスポート、ストレス・テスト・オプションおよびXML入力引数を指定できます。
「セキュリティ」セクションでは、Webサービス・セキュリティのテストを実行できます。このセクションには、メッセージを使用してセキュリティ・プロパティを渡すための次のフィールドがあります。
フィールド 説明 OWSMセキュリティ・ポリシー
WS-SecurityのSOAPヘッダーを挿入します。「ユーザー名」フィールドは必須で、「パスワード」フィールドはオプションです。このオプションを選択すると、ページがリフレッシュされて選択項目のセキュリティ・ポリシーが表示されます。
HTTP Basic認証
ユーザー名とパスワード資格証明をHTTPトランスポート・ヘッダーに挿入します。「ユーザー名」および「パスワード」フィールドは両方とも必須です。
拡張
カスタム・ポリシーを使用してユーザーを認証します(カスタム・ポリシーのURIを指定します)。「ユーザー名」および「パスワード」フィールドはオプションです。
なし
セキュリティ資格証明を指定しない場合に選択します。これはデフォルト選択です。
RESTサービスのテスト時に、SOAPプロトコルは使用されません。セキュリティ・オプションは、「HTTP Basic認証」と「なし」のみです。
-
次の各フィールドではデフォルト値をそのまま使用するか、使用するテスト環境に適した値を入力します。
「サービスのクオリティ」セクションでは、信頼できるメッセージング(WS-RM)、メッセージ転送最適化メカニズム(MTOM)またはWSアドレスをテストできます。このセクションは、RESTサービスのテスト時には使用できません。このセクションには、次のフィールドがあります。
フィールド 説明 WS-RM
次のオプションのいずれかを選択して、「WS信頼できるメッセージング」プロトコル・ポリシーをテストします。信頼できるメッセージング・ポリシーによって、このプロトコルがサポートされ、メッセージのエンドツーエンド配信が保証されます。
-
WSDLデフォルト: WSDLのデフォルト動作を実行します。たとえば、WSDLにWS-RMポリシーへの参照が含まれる場合は、そのポリシーが適用されます。WSDLにWS-RMポリシーへの参照が含まれない場合、信頼できるメッセージングはテストされません。
-
なし: WSDLにポリシーへの参照が含まれる場合でも、WS-RMのポリシーはテストされません。
-
カスタム: カスタム・ポリシーを適用します。カスタム・ポリシーのURIは、「ポリシーURI」フィールドで指定します。WS-RMポリシーがWSDLで参照されている場合は無視され、かわりに「ポリシーURI」フィールドで指定したポリシーが使用されます。
MTOM
次のオプションのいずれかを選択して、MTOMポリシーをテストします。MTOMポリシーによって、添付がMTOMフォーマットであることが保証されます。このフォーマットは、Webサービスとの間でバイナリ・データを効率的に送受信するためのフォーマットです。
-
WSDLデフォルト: WSDLのデフォルト動作を実行します。たとえば、WSDLにMTOMポリシーへの参照が含まれる場合は、そのポリシーが適用されます。WSDLにMTOMポリシーへの参照が含まれない場合、MTOMはテストされません。
-
なし: WSDLにポリシーへの参照が含まれる場合でも、MTOMのポリシーはテストされません。
-
カスタム: カスタム・ポリシーを適用します。カスタム・ポリシーのURIは、「ポリシーURI」フィールドで指定します。MTOMポリシーがWSDLで参照されている場合は無視され、かわりに「ポリシーURI」フィールドで指定したポリシーが使用されます。
WSアドレス
次のオプションのいずれかを選択して、WS-Addressingポリシーをテストします。WS-Addressingポリシーによって、WS-Addressing仕様に準拠したWS-AddressingヘッダーがSOAPメッセージに含まれていることが検証されます。
-
WSDLデフォルト: WSDLのデフォルト動作を実行します。たとえば、WSDLにWS-Addressingポリシーへの参照が含まれる場合は、そのポリシーが適用されます。WSDLにWS-Addressingポリシーへの参照が含まれない場合、WS-Addressingはテストされません。
-
なし: WSDLにポリシーへの参照が含まれる場合でも、WS-Addressingのポリシーはテストされません。
-
カスタム: カスタム・ポリシーを適用します。カスタム・ポリシーのURIは、「ポリシーURI」フィールドで指定します。WS-AddressingポリシーがWSDLで参照されている場合は無視され、かわりに「ポリシーURI」フィールドで指定したポリシーが使用されます。
-
-
次の各フィールドではデフォルト値をそのまま使用するか、使用するテスト環境に適した値を入力します。
「HTTPヘッダー」セクションでは、Webサービスにリクエスト情報を渡すHTTPヘッダーを追加、変更または削除できます。このセクションは、RESTサービスのテスト時には使用できません。このセクションには、次のフィールドがあります。
フィールド 説明 追加
クリックすると、HTTPヘッダーに新しい行を追加して、「名前」および「値」フィールドに適切な情報を入力できます。
削除
このカーソルを「名前」または「値」フィールドのいずれかに置いてクリックすると、選択したHTTPヘッダー行を削除できます。
-
次の各フィールドではデフォルト値をそのまま使用するか、使用するテスト環境に適した値を入力します。
「追加テスト・オプション」セクションには、次のフィールドがあります。このセクションでは、複数インスタンスを同時に起動する簡単なストレス・テストを指定します。
ノート:
これは、本当の意味でのストレス・テスト・ツールではありません。したがって、同時スレッド数および操作を起動する回数として大きい値を入力しないでください。そうしないと、エラーが発生する場合があります。
フィールド 説明 ストレス・テストの有効化
「有効化」をクリックして、簡単なストレス・テストを作成します。このオプションを有効にすると、対話IDは表示されません。
同時スレッド
起動を送信する同時スレッドの数を入力します。デフォルトは
5
スレッドです。スレッドごとのループ
操作を起動する回数を入力します。デフォルトは
10
回です。ミリ秒単位の遅延
次の操作を起動するまでの遅延をミリ秒単位で指定します。デフォルトは
1000
ミリ秒(1
秒)です。非同期レスポンス・テスト
非同期Webサービスをテストする場合は、これはテストの実行時に非同期レスポンスをリクエストするかどうかを指定します。
-
リソース・キー: 非同期Webサービスのテスト時に、非同期レスポンスと相関する値(
testkey
など)を入力します。各レスポンス・キーは一意である必要があります。非同期レスポンスは、後で非同期レスポンス・テスト・ページで、関連付けたレスポンス・キーを指定して追跡することもできます。 -
なし: リソース・キーを指定しない場合に選択します。
-
-
次の各フィールドではデフォルト値をそのまま使用するか、使用するテスト環境に適した値を入力します。
「引数を入力」セクションには、XMLペイロード・データを入力するための次のフィールドがあります。
フィールド 説明 ツリー表示
情報を入力するテキスト・フィールドのグラフィカル・インタフェースが表示されます。このフィールドを選択すると、必要なヘッダーとXML構造が自動的に生成されます。
XML表示
値の挿入のためのXMLファイル形式が表示されます。このフィールドには、メッセージのraw XMLペイロードを貼り付けることができます。
検証の有効化
入力引数の検証を有効にする場合に選択します。
-
「Webサービスのテスト」をクリックします。
テストを終了すると、「レスポンス」タブに結果が表示されます。
ノート:
ストレス・テストの実行中、または非同期サービスのテスト中の場合、「レスポンス」タブにペイロード・データは表示されません。
-
「フロー・トレースの起動」をクリックして、インスタンスのフロー・トレースにアクセスします。新しいフロー・インスタンスのIDは、「フローのトレース」ページの右隅に表示されます。
-
コンポジットのホーム・ページに戻るには、ページの上部に表示されるコンポジット名をクリックするか、コンポジット・ターゲット・メニューから「ホーム」を選択します。コンポジットのホーム・ページで、「フロー・インスタンス」をクリックし、「最新のインスタンス」をクリックします。新しいテスト・インスタンスが、インスタンス表の上部に表示されます。
詳細は、次の項を参照してください。
-
インスタンスの概念の詳細は、「ビジネス・フロー・インスタンスの概要」を参照してください
-
ポリシーの概要については、「ポリシーの概要」を参照してください
-
「Webサービスのテスト」ページからのWebサービスのテストおよびポリシーに関する具体的な詳細は、Webサービスの管理を参照してください。
「Webサービスのテスト」ページでのRPC/リテラル・スタイルのWSDLファイルの指定
"element="
によって定義されたメッセージを持つRPC/リテラル・スタイルのWSDLファイルを指定する場合、Oracle Enterprise Manager Fusion Middleware Controlの「Webサービスのテスト」ページで、「引数の入力」セクションの「XML表示」オプションを使用して、SOAPメッセージを変更します。SOAP本文は次のようになります。
<soap:Body> <ns:initiate> <payload> <value xmlns="...">3</value> </payload> </ns:initiate> </soap:Body>
ここで、initiate
は操作名、payload
はパーツ名、およびvalue
はWSDLメッセージ/部分に定義されている要素です。
SOAコンポジット・アプリケーション・レベルでのビジネス・フロー・インスタンスのトラッキング
SOAインフラストラクチャおよび個々のSOAフォルダでのビジネス・フロー・インスタンスのトラッキングの他に、特定のSOAコンポジット・アプリケーションの「フロー・インスタンス」ページでもインスタンスをトラッキングできます。1つのビジネス・フロー・インスタンスは、1つのエンドツーエンド・ビジネス・トランザクションに相当します。ビジネス・フローは、単一のSOAコンポジット・アプリケーションまたは特定のビジネス・プロセスを実現するために組み合された複数のSOAコンポジット・アプリケーションで構成されます。
-
次のいずれかのオプションを使用して、このページにアクセスします。
SOAインフラストラクチャのメニューから... ナビゲータのSOAフォルダから... -
「ホーム」を選択します。
-
「デプロイ済コンポジット」タブを選択します。
-
「コンポジット」セクションで、特定のSOAコンポジット・アプリケーションを選択します。
-
soa-infraの下にあるSOAフォルダを展開します。
-
特定のSOAコンポジット・アプリケーションを選択します。
-
-
「フロー・インスタンス」をクリックします。
「フロー・インスタンス」ページに、次の詳細が表示されます。
-
包括的なインスタンスおよびフォルト検索基準を指定して保存し、「検索」を実行するためのユーティリティ。
ノート:
「フロー・インスタンス」ページに初めてアクセスする場合、「検索結果」表は空です。「検索」をクリックして、この表にビジネス・フロー・インスタンスの詳細を移入する必要があります。
-
「検索結果」表。この表には、ビジネス・フローを一意に識別するフロー・トレースID、ビジネス・フローを起動するコンポジット(ビジネス・フローは複数のコンポジットにまたがることができます)、フロー・インスタンスの状態(正常に完了、実行中、失敗、リカバリが必要など)、インスタンス起動時間、インスタンスへの最終更新、このフローが起動されたSOAフォルダ、フロー・インスタンス名(設計時にBPELプロセスまたはOracle Mediatorサービス・コンポーネントで設定された場合)、およびログ・ファイルへのリンクが表示されます。表にその他の列を表示するには、「表示」→「列」の順に選択します。
ノート:
個々のSOAコンポジット・アプリケーションの「フロー・インスタンス」ページには、「エラー・ホスピタル」ページへのリンクはありません。その機能にアクセスするには、SOAインフラストラクチャまたは個々のSOAフォルダの「フロー・インスタンス」ページに移動し、同様の条件で検索を実行し、検索を該当するSOAコンポジット・アプリケーションに限定します。
次のビジネス・フロー・インスタンスのタスクを実行できます。