Hitachi

Cosminexus V11 BPM/ESB基盤 サービスプラットフォーム 開発ガイド 基本開発編


10.5.5 サービスの自動エミュレーション

サービスの自動エミュレーションの設定,および実行手順について説明します。

参考

エミュレーションに必要な応答電文がない場合は,cscgenbinaryコマンドで作成できます。cscgenbinaryコマンドの詳細については,マニュアル「サービスプラットフォーム リファレンス」の「cscgenbinary(バイナリフォーマット定義ファイルからバイナリ電文の生成)」を参照してください。

〈この項の構成〉

(1) サービスの自動エミュレーションの設定

  1. Eclipseのメニューから,[ウィンドウ]−[ビューの表示]−[その他]を選択します。

    [ビューの表示]ダイアログが表示されます。

  2. [デバッグ]−[HCSC 自動エミュレート]を選択し,[開く]ボタンをクリックします。

    HCSC 自動エミュレートビューが表示されます。

    HCSC 自動エミュレートビューの詳細については,マニュアル「サービスプラットフォーム リファレンス」の「1.1.3 ビジネスプロセスのデバッグ画面の構成」を参照してください。

  3. HCSC 自動エミュレートビューの[追加]ボタンをクリックします。

    HCSC 自動エミュレートビューのテーブルに行が追加されます。

  4. [サービス名]のセルをクリックし,ドロップダウンリストからエミュレーションしたいサービスを選択します。

  5. [オペレーション名]のセルをクリックし,ドロップダウンリストからエミュレーションしたいサービスのオペレーションを選択します。

  6. [応答種別]のセルを選択し,ドロップダウンリストから通常応答またはフォルト応答を選択します。

  7. [応答電文]のセルを選択し,[...]ボタンをクリックします。

    [ファイル選択]ダイアログが表示されます。

  8. 応答電文のファイルを選択し,[OK]ボタンをクリックします。

    ファイルの内容が応答電文としてそのまま使用されます。

    ただし,拡張子が.xslのファイルを指定した場合,指定したスタイルシートファイルで要求電文を変換した結果が応答電文として使用されます。拡張子が.xslのファイルは,要求電文の変数種別と応答電文の変数種別がともにXMLのときだけ使用できます。

    注※

    応答電文にXML形式のデータを指定する場合は,XMLの文字コードがUTF-8のものしか指定できません。

  9. 必要に応じて,[条件]のセルを選択し,XPath式で条件を入力します。

    サービスの要求電文に対して条件式を評価した結果が真の場合に,サービスの自動エミュレーションが実行されます。条件を入力しなかった場合は,常に真として評価されます。

    条件は,要求電文の変数種別が次の場合だけ設定できます。

    • XML

    • non-XML

    条件式を入力するときは,次の点に注意してください。

    • サービスの要求電文に対して条件を評価するため,変数名の指定はできません。

    • 空文字(0x00)およびcsc:getVariableData などの拡張関数は使用できません。

    • 条件式を指定しなかった場合は,常に真として評価されます。

  10. [有効]のセルのチェックボックスをチェックします。

    サービスの自動エミュレーションが設定されます。

HCSC 自動エミュレートビューの設定内容をエミュレート設定情報定義ファイルに保存したい場合は,HCSC 自動エミュレートビューで[保存]ボタンをクリックします。

また,[読み込み]ボタンをクリックすることで,エミュレート設定情報定義ファイルに保存した設定内容を取得できます。すでにHCSC 自動エミュレートビューに設定内容がある場合は,HCSC 自動エミュレートビューの設定内容を上書きしてもよいか確認するダイアログが表示されます。

HCSC 自動エミュレートビューに同一のサービスとオペレーションの組み合わせを複数設定した場合,優先順位が最も高いサービスのエミュレーションが実行されます。サービスの優先順位を変更するには,変更したい行を選択し,[上へ]ボタンまたは[下へ]ボタンをクリックします。

応答電文のファイル名を右クリックし,[ファイルの表示]を選択すると,対象のファイルを開くことができます。

複数のビジネスプロセスをデバッグする場合,自動エミュレーションの設定(サービス名,オペレーション名)は,すべてのビジネスプロセスで有効になります。

なお,自動エミュレーションの対象となるサービス呼出アクティビティに対して手動エミュレーションを実行した場合,手動エミュレーションの実行が優先されます。

(2) サービスの自動エミュレーションの実行

HCSC 自動エミュレートビューに設定したサービス呼出アクティビティにプロセスインスタンスの処理が進むと,設定した応答電文がサービスの応答電文の代わりに自動的に利用されます。

XML形式,またはバイナリ形式のファイルを応答電文に指定した場合,ファイルの内容がそのままサービスの応答電文としてエミュレーションされます。XSL形式のファイルを応答電文に指定した場合,サービスの要求電文をスタイルシートファイルで変換した結果がサービスの応答電文としてエミュレーションされます。

なお,サービスの自動エミュレーションを設定していない場合は,通常のサービス呼び出しが実行されます。

注意事項

HCSC 自動エミュレートビューを閉じている場合,サービスの自動エミュレーションは実行されません。