Cosminexus サービスプラットフォーム 開発ガイド

[目次][用語][索引][前へ][次へ]

付録C.3 定義してみましょう

それでは,実際に用意されているサンプルプログラムを使って,サービスアダプタ,ビジネスプロセスなどを定義してみましょう。

各サンプルプログラムの目的を次に示します。

(1)HelloServiceAdapterサンプルプログラム
サービスアダプタの定義を習得することを目的にしています。

(2)HelloBusinessProcessサンプルプログラム
ビジネスプロセスの定義を習得することを目的にしています。

(3)商品手配サンプルプログラム
実際の業務に近い内容での定義を習得することを目的にしています。
<この項の構成>
(1) HelloServiceAdapterサンプルプログラム
(2) HelloBusinessProcessサンプルプログラム
(3) 商品手配のサンプルプログラム

(1) HelloServiceAdapterサンプルプログラム

サービスリクエスタからサービスアダプタを呼び出す,HelloServiceAdapterサンプルプログラムを使って,サービスアダプタを定義してみましょう。

HelloServiceAdapterサンプルプログラムの概要を図C-5に,HelloServiceAdapterサンプルプログラムのコンポーネントを表C-1に示します。

図C-5 HelloServiceAdapterサンプルプログラムの概要

[図データ]

表C-1 HelloServiceAdapterサンプルプログラムのコンポーネント

コンポーネント 形態 内容
サービスリクエスタ HTML/サーブレット 入力画面を表示しサービスアダプタを呼び出します。Helloサービスを呼び出した結果をHelloサービスアダプタから受け取り,画面に表示します。
Helloサービスアダプタ サービスアダプタ Helloサービスを呼び出すためのサービスアダプタです。Helloサービスを呼び出して,サービスリクエスタに応答を返します。
Helloサービス Webサービス 入力された文字列を編集して返します。

説明

  1. サービスリクエスタから文字列を入力します。
  2. サービスアダプタから,Webサービスが呼び出されます。
  3. Webサービスから編集された文字列が戻り値として取得されます。
  4. 文字列が画面に表示されます。

HelloServiceAdapterサンプルプログラムでは,次に示すコンポーネントを定義します。

(a)Helloサービスアダプタ
(a) Helloサービスアダプタを定義してみましょう

サービスアダプタは,呼び出すサービス部品に合わせて作成します。HelloServiceAdapterサンプルプログラムを使って,Helloサービスアダプタを定義するときに設定する値を次の表に示します。

表C-2 Helloサービスアダプタを定義するときに設定する値

項目名 設定する値 説明
サービス部品の種別 Webサービス 呼び出すサービス部品の種別に合わせて設定したサービスアダプタの種別です。このサンプルプログラムのサービス部品は,Webサービスのためサービスアダプタの種別もWebサービスを設定します。
サービス名 Helloサービスアダプタ アダプタの名称を指定します。
WSDLファイル HelloService.wsdl WSDLには,Webサービスがどのような機能を持ち,それを利用するためにはどのような要求をすればよいのか,などを記述する方法が定義されています。Helloサービスアダプタは,Helloサービス用WSDL(HelloService.wsdl)を使用して作成します。
Portの指定 Hello Helloサービスアダプタのポートを指定します。
サービスID HelAdp HelloサービスアダプタのIDを指定します。
クライアント定義ファイル c4webcl.properties
(次の内容が設定されています。「c4web.logger.log_file_prefix=HelloService」)
クライアント定義ファイルは,クライアント側の動作を制御するファイルで,「c4webcl.properties 」というファイル名称で利用者が作成します。
このサンプルプログラムでは,トレースファイ
ル,およびアプリケーションログのプレフィクスとして,「HelloService」を設定するクライアント定義ファイルが用意されています。

注 各ファイルの格納場所については,「付録C.4(a) HelloServiceAdapterサンプルプログラムの構成」を参照してください。

 

Helloサービスアダプタの追加と定義手順を次に示します。

  1. ツリービューのサービス定義一覧で右クリックして「サービスアダプタ追加」を選択します。

    [図データ]

    追加するサービスアダプタから利用するサービス種別を設定するダイアログが表示されます。
  2. ドロップダウンリストから「Webサービス」を選択して,[次へ]ボタンをクリックします。

    [図データ]

    サービスアダプタの追加に必要な情報を入力するダイアログが表示されます。
  3. サービス名に「Helloサービスアダプタ」を,WSDLファイル名には「HelloService.wsdl」を入力して,[次へ]ボタンをクリックします。

    [図データ]

    ポートを指定するダイアログが表示されます。
  4. ドロップダウンリストでポート「Hello」を選択して,[終了]ボタンをクリックします。

    [図データ]

    アダプタ「Helloサービスアダプタ」が作成され,サービスアダプタ定義画面が表示されます。
  5. サービスアダプタ定義画面の基本画面で,サービスIDを「HelAdp」に変更します。

    [図データ]

  6. サービスアダプタ定義画面の詳細画面で,[…]ボタンをクリックして,クライアント定義ファイル「c4webcl.properties」を指定します。
    HelloServiceAdapterサンプルプログラムでは,次の場所にあります。
    <Cosminexusインストールディレクトリ>\CSCTE\Samples\HelloServiceAdapter\Service\HelloService\c4webcl.properties

    [図データ]

  7. [ファイル]−[保管]を選択します。
(b) Helloサービスアダプタの検証とパッケージングをしてみましょう

作成したHelloサービスアダプタは,正しいかどうか検証してから,パッケージングします。検証とパッケージングの手順を次に示します。

  1. ツリービューのサービス定義一覧でHelloサービスアダプタを選択し,右クリックして,「検証」を選択します。

    [図データ]

    検証結果がコンソールビューに表示されます。エラーが発生した場合は,メッセージに従って修正します。
  2. ツリービューのサービス定義一覧で,「Helloサービスアダプタ」を選択し,右クリックして,「パッケージング」を選択します。

    [図データ]

    メッセージダイアログが表示されます。
  3. 次のどちらかの操作をします。
    パッケージングが成功した場合は,[OK]ボタンをクリックします。
    パッケージングが失敗した場合は,ダイアログのメッセージに従って対処し,パッケージングを再実行します。
    これでパッケージングが終了しました。

(2) HelloBusinessProcessサンプルプログラム

ビジネスプロセスからサービスアダプタを呼び出す,HelloBusinessProcessサンプルプログラムを使って,ビジネスプロセスを定義してみましょう。

HelloBusinessProcessサンプルプログラムの概要を図C-6に,HelloBusinessProcessサンプルプログラムのコンポーネントを表C-3に示します。

図C-6 HelloBusinessProcessサンプルプログラムの概要

[図データ]

表C-3 HelloBusinessProcessサンプルプログラムのコンポーネント

コンポーネント 形態 内容
サービスリクエスタ HTML/サーブレット 入力画面を表示しビジネスプロセスを呼び出します。Helloサービスを呼び出したビジネスプロセスの結果も画面に表示します。
Helloビジネスプロセス サービスアダプタ/ビジネスプロセス サービスリクエスタからの要求を受け取り,Webサービスを呼び出してサービスリクエスタに応答を返します。
Helloサービス Webサービス 入力された文字列を編集して返します。

説明

  1. サービスリクエスタから文字列を入力します。
  2. ビジネスプロセスからサービスアダプタを介して,Webサービスが呼び出されます。
  3. Webサービスから編集された文字列が戻り値として取得されます。
  4. 戻り値の文字列が編集されます。
  5. ビジネスプロセスで編集された文字列が戻り値として取得され,画面に表示されます。

HelloBusinessProcessサンプルプログラムでは,次に示すコンポーネントを定義します。

(a)Helloビジネスプロセス

Helloサービスアダプタの定義については,「付録C.3(1)(a) Helloサービスアダプタを定義してみましょう」を参照してください。

(a) Helloビジネスプロセスを定義してみましょう

ビジネスプロセスは,どのようなプロセスで処理するかによって,定義する内容が異なります。HelloBusinessProcessサンプルプログラムのHelloビジネスプロセスでは,次のようなプロセスで処理します。

  1. Helloビジネスプロセスは,サービスリクエスタから入力された文字列を受け取ります。
  2. Helloサービスアダプタを介してHelloサービスを呼び出します。
  3. Helloサービスを呼び出した結果,取得した文字列に,「△and△Business△Process」(△は半角空白)という文字列を連結します。
    出力文字列: <Helloサービスの出力文字列>△and△Business△Process
  4. サービスリクエスタに文字を連結した結果を返し表示します。

 

HelloBusinessProcessサンプルプログラムのビジネスプロセスは,次の流れで定義します。

  1. 新規ビジネスプロセスを追加します
  2. 変数を設定します
  3. アクティビティを配置します
  4. アクティビティを定義します
  5. ビジネスプロセスの定義を終了します
    注※ アクティビティは,ビジネスプロセスの処理の流れを定義する部品です。
 

HelloBusinessProcessサンプルプログラムを使って,ビジネスプロセスを追加するときに設定する値を次の表に示します。

表C-4 ビジネスプロセスを追加するときに設定する値

項目名 設定する値 説明
ビジネスプロセス名 Helloビジネスプロセス ビジネスプロセスの名称を指定します。
ステータスの永続化 yes データベースに記録を残すかどうかを指定します。記録をとると,プロセスの進捗状況などを把握できます。このサンプルプログラムでは,データベースに記録を残すため,「yes」を選択します。
BPELファイル インポートする チェックを外します 上流工程でツールを使って作成したBPELをインポートする場合は,チェックを入れます。インポートすると,ビジネスプロセスに必要なアクティビティが自動的に表示されます。このサンプルプログラムでは,インポートしないので,チェックを外します。
サービスID HelBP ビジネスプロセスのIDを指定します。

Helloビジネスプロセスの追加手順を次に示します。

  1. ツリービューのサービス定義一覧で,右クリックして[ビジネスプロセス追加]を選択します。
    ビジネスプロセス定義を追加するためのダイアログが表示されます。

    [図データ]

  2. [ビジネスプロセス名]に「Helloビジネスプロセス」を入力し,[ステータスの永続化]で「yes」を選択します。[BPELファイル]の[インポートする]はチェックを外します。

    [図データ]

  3. [終了]ボタンをクリックします。
    ビジネスプロセス「Helloビジネスプロセス」が作成され,ビジネスプロセス定義画面が表示されます。
  4. ビジネスプロセス定義画面のプロパティービューで,サービスIDを「HelBP」に変更します。

    [図データ]

 

ビジネスプロセスでは,アクティビティを定義するときに変数を使用します。そのため,使用する変数をあらかじめ設定してから,アクティビティを定義します。Helloビジネスプロセスで使用する変数を次の表に示します。

表C-5 Helloビジネスプロセスで使用する変数

変数名 種別 xsdファイル
入力データ messageType 入力データ.xsd
出力データ messageType 出力データ.xsd

Helloビジネスプロセスで使用する変数の設定手順を次に示します。

  1. ビジネスプロセス定義画面のキャンバス上の[変数・相関セット]アイコンをダブルクリックします。

    [図データ]

    [変数・相関セット一覧]ダイアログが表示されます。
  2. [変数一覧]を選択します。変数名に「入力データ」を入力し,種別は,ドロップダウンリストから「messageType」を選択します。

    [図データ]

  3. [取込]ボタンをクリックします。
    [電文フォーマットの取込]ダイアログが表示されます。
  4. [サービス名]を選択して,ドロップダウンリストから「Helloサービスアダプタ」を選択します。
  5. [オペレーション名]はドロップダウンリストから「getHelloString」を,[電文種別]はドロップダウンリストから「要求電文」を選択します。[電文フォーマット]に「入力データ」を入力します。

    [図データ]

  6. [OK]ボタンをクリックします。
    [電文フォーマットの取込]ダイアログが閉じます。
  7. [変数・相関セット一覧]ダイアログの[追加]ボタンをクリックします。
    [変数一覧]に,「入力データ」が追加されます。
  8. [変数・相関セット一覧]ダイアログの[変数一覧]を選択します。変数名に「出力データ」を入力し,種別は,ドロップダウンリストから「messageType」を選択します。
  9. [取込]ボタンをクリックします。
    [電文フォーマットの取込]ダイアログが表示されます。
  10. [サービス名]を選択して,ドロップダウンリストから「Helloサービスアダプタ」を選択します。
  11. オペレーション名はドロップダウンリストから「getHelloString」を,電文種別はドロップダウンリストから「応答電文」を選択します。電文フォーマットに「出力データ」を入力します。

    [図データ]

  12. [OK]ボタンをクリックします。
    [電文フォーマットの取込]ダイアログが閉じます。
  13. [変数・相関セット一覧]ダイアログの[追加]ボタンをクリックします。
    [変数一覧]に,「出力データ」が追加されます。
  14. [変数・相関セット一覧]ダイアログの[OK]ボタンをクリックします。
    これで変数が設定できました。

    [図データ]

 

HelloBusinessProcessサンプルプログラムのビジネスプロセスに必要なアクティビティを次の表に示します。

表C-6 HelloBusinessProcessサンプルプログラムのビジネスプロセスに必要なアクティビティ

設定する値 説明
受付アクティビティ サービスリクエスタからの応答を受け付けます。
サービス呼出アクティビティ Helloサービスを呼び出します。
データ変換アクティビティ 文字列を編集します。
応答アクティビティ 処理結果をサービスリクエスタへ返します。

アクティビティの配置手順を次に示します。

  1. パレットから次のアクティビティをクリックし,キャンバス上の適当な位置にクリックして配置します。
    • 受付
    • サービス呼出
    • データ変換
    • 応答
  2. アクティビティを連結するために,パレットの[コネクション]をクリックします。
  3. 連結元である開始アクティビティをクリックします。
  4. 連結先である受付アクティビティをクリックします。
    これで開始アクティビティと受付アクティビティを連結できました。
  5. 受付アクティビティから終了アクティビティまでを,手順2.〜4.と同様の操作で一つづつアクティビティを連結します。

    [図データ]

 

キャンバスへ配置した各アクティビティの内容を定義します。

 

<受付アクティビティ>

  1. キャンバスの受付アクティビティをダブルクリックします。
    [受付アクティビティ]ダイアログが表示されます。
  2. 次の内容を入力します。

    [図データ]

    項目名 設定する値 説明
    アクティビティ名 受付 アクティビティの名称を指定します。
    オペレーション名 getHelloString サービスリクエスタからサービス部品を呼び出すときに利用するオペレーションの名称を指定します。
    割当変数 入力データ ビジネスプロセスの要求電文に割り当てる変数をドロップダウンリストから選択します。
    割当相関セット群 なし 相関セットグループをアクティビティに割り当てる場合に設定します。このサンプルプログラムでは使用しないため,設定しません。
    通信モデル 同期 オペレーションの通信モデルを指定します。このサンプルプログラムで使用するHelloサービスは,Webサービスのため,「同期」を設定します。
    インスタンス生成 yes 要求電文を受け付けたときに,プロセスを初期化するかどうかを選択します。このサンプルプログラムでは,「yes」を設定します。
  3. [OK]ボタンをクリックします。
 

<サービス呼出アクティビティ>

  1. キャンバスのサービス呼出アクティビティをダブルクリックします。
    [サービス呼出アクティビティ]ダイアログが表示されます。
  2. 次の内容を入力します。

    [図データ]

    項目名 設定する値 説明
    アクティビティ名 Helloサービス アクティビティの名称を入力します。
    サービス名 Helloサービスアダプタ 要求電文を送信して呼び出すサービス部品の名称をドロップダウンリストから選択します。
    オペレーション名 getHelloString [サービス名]で指定したサービス部品(Helloサービスアダプタ)のオペレーションのうち,実際に呼び出すオペレーションの名称を指定します。
    通信モデル 同期 [オペレーション名]で指定したオペレーションに設定されている通信モデルが表示されます。
    要求電文用割当変数 入力データ 在庫管理サービスを呼び出す要求電文に割り当てる変数をドロップダウンリストから選択します。
    応答電文用割当変数 出力データ 同期オペレ−ションから受け取る応答電文に割り当てる変数をドロップダウンリストから選択します。
    割当相関セット群 なし 相関セットグループをアクティビティに割り当てる場合に設定します。このサンプルプログラムでは使用しないため,設定しません。
  3. [OK]ボタンをクリックします。
 

<データ変換アクティビティ>

  1. キャンバスのデータ変換アクティビティをダブルクリックします。
    [データ変換アクティビティ]ダイアログが表示されます。
  2. 次の内容を入力します。

    [図データ]

    項目名 設定する値 説明
    アクティビティ名 出力文字列編集 アクティビティの名称を指定します。
    変数(変換元) 出力データ データの変換元になる変数をドロップダウンリストから選択し,[追加]ボタンをクリックします。
    変数(変換先) 出力データ データの変換先になる変数をドロップダウンリストから選択します。
    データ変換定義 出力文字列編集 データ変換定義ファイルに仮想的に付ける名称を指定します。
  3. [OK]ボタンをクリックします。
  4. キャンバスのデータ変換アクティビティを右クリックして,[マッピング定義起動]を選択します。
    [ルート要素選択]ダイアログが表示されます。
  5. [変換元]のスキーマ論理名「出力データ」のルート要素として,ドロップダウンリストから「hls:getHelloStringResponse」を選択し,[変換先]のスキーマ論理名「出力データ」のルート要素として,ドロップダウンリストから「hls:getHelloStringResponse」を選択します。

    [図データ]

  6. [OK]ボタンをクリックします。
    データ変換定義画面が表示されます。

    [図データ]

  7. データ変換定義画面のパレットから[concat]をクリックし,キャンバスの変換元と変換先の間にクリックして配置します。
  8. データ変換定義画面のパレットから[const]をクリックし,キャンバスの変換元と変換先の間にクリックして配置します。
  9. データ変換定義画面のパレットから[マッピング]を選択します。
  10. マッピング元となる変換元ノードのノードアダプタをクリックします。
  11. マッピング先となる[concat]をクリックします。
    マッピング線が設定されます。
  12. 手順11.〜12.と同様の操作で,[concat]から変換先ノードのノードアダプタにマッピング線を設定します。
    [const]から[concat]へのマッピング線を先に設定すると,出力文字列の順序が変わってしまうため,注意してください。
  13. 手順11.〜12.と同様の操作で,[const]から[concat]にマッピング線を設定します。

    [図データ]

  14. データ変換定義画面のパレットから[選択]をクリックします。
  15. [const]をダブルクリックします。
    [定数]ダイアログが表示されます。
  16. [文字列]を選択して,「△and△Business△Process」を入力します(△は半角の空白です)。

    [図データ]

  17. [OK]ボタンをクリックします。
 

<応答アクティビティ>

  1. キャンバスの応答アクティビティをダブルクリックします。
    [応答アクティビティ]ダイアログが表示されます。
  2. 次の内容を入力します。

    [図データ]

    項目名 設定する値 説明
    アクティビティ名 応答 アクティビティの名称を指定します。
    オペレーション名 getHelloString 対応する受付アクティビティに指定したオペレーションの名称を指定します。
    割当変数 出力データ 応答電文に割り当てる変数をドロップダウンリストから選択します。
    割当相関セット群 なし 相関セットグループをアクティビティに割り当てる場合に設定します。このサンプルプログラムでは使用しないため,設定しません。
    フォルト名 なし フォルト処理として応答アクティビティを定義して,サービスリクエスタにフォルトが発生したことを示す応答電文を送信する場合のフォルトの名称を指定します。このサンプルプログラムではフォルト処理を使用しないため,設定しません。
  3. [OK]ボタンをクリックします。
 

すべてのアクティビティを定義したら,[ファイル]−[保管]を選択して,ビジネスプロセスの定義を終了します。

(b) Helloビジネスプロセスの検証とパッケージングをしてみましょう

作成したビジネスプロセスは,正しいかどうか検証してから,パッケージングします。検証とパッケージングの方法は,Helloサービスアダプタと同じです。検証とパッケージングの詳細については,「付録C.3(1)(b) Helloサービスアダプタの検証とパッケージングをしてみましょう」を参照してください。

(3) 商品手配のサンプルプログラム

実際の業務に近い内容のビジネスプロセスからサービスアダプタを呼び出す,商品手配サンプルプログラムを使って,ビジネスプロセスを定義してみましょう。

ここで紹介する商品手配のサンプルプログラムは,店舗の担当者が業務システムを使って商品の手配をする場合に,在庫引当や配送手配の処理をすることを想定しています。商品手配サンプルプログラムの概要を図C-7に,商品手配サンプルプログラムのコンポーネントを表C-7に示します。

図C-7 商品手配サンプルプログラムの概要

[図データ]

表C-7 商品手配サンプルプログラムのコンポーネント

コンポーネント 形態 内容
サービスリクエスタ HTML/サーブレット/JSP 入力画面を表示しビジネスプロセスを呼び出します。サービスを呼び出したビジネスプロセスの結果も画面に表示します。
商品手配/在庫管理・配送受付 サービスアダプタ/ビジネスプロセス サービスリクエスタからの要求を受け取り,在庫管理サービスや配送受付サービスを呼び出して,サービスリクエスタに応答を返します。
在庫管理サービス Webサービス 商品の在庫を引き当て,引当番号を返します。
配送受付サービス Webサービス 配送を手配し,配送番号を返します。

説明

  1. サービスリクエスタから商品名および個数を入力すると,商品手配ビジネスプロセスが呼び出されます。
  2. ビジネスプロセスから,在庫管理サービスアダプタを介して在庫管理サービスが呼び出されます。
  3. ビジネスプロセスには,在庫管理サービスで在庫を引き当てた結果が,引当番号として取得されます。
  4. 在庫管理サービスの呼び出し結果から,ビジネスプロセスでは,在庫がない場合は「*」(在庫無し)をサービスリクエスタに返します。
  5. 在庫がある場合は,ビジネスプロセスから配送受付サービスアダプタを介して配送受付サービスが呼び出されます。
  6. ビジネスプロセスには,配送受付サービスで配送手配した結果が,配送番号として取得されます。
  7. 配送受付サービスの呼び出し結果から,配送番号をサービスリクエスタに返します。

商品手配サンプルプログラムでは,次に示す三つのコンポーネントを定義します。

(a)在庫管理サービスアダプタ

(b)配送受付サービスアダプタ

(c)商品手配ビジネスプロセス
(a) 在庫管理サービスアダプタを定義してみましょう

在庫管理サービスアダプタは,在庫管理サービス用WSDL(InventoryManagementService.wsdl)を使用して定義します。在庫管理サービスアダプタを定義するときに設定する値を次の表に示します。

表C-8 在庫管理サービスアダプタを定義するときに設定する値

項目名 設定する値 説明
サービス部品の種別 Webサービス 呼び出すサービス部品の種別に合わせて設定したサービスアダプタの種別です。このサンプルプログラムのサービス部品は,Webサービスのためサービスアダプタの種別もWebサービスを設定します。
サービス名 在庫管理 アダプタの名称を指定します。
WSDLファイル InventoryManagementService.wsdl WSDLには,Webサービスがどのような機能を持ち,それを利用するためにはどのような要求をすればよいのか,などを記述する方法が定義されています。在庫管理サービスアダプタは,在庫管理サービス用WSDL(InventoryManagementService.wsdl)を使用して作成します。
Portの指定 InventoryManager 在庫管理サービスアダプタのポートを指定します。
サービスID InvAdp 在庫管理サービスアダプタのIDを指定します。
クライアント定義ファイル c4webcl.properties
(次の内容が設定されています。「c4web.logger.log_file_prefix=InventoryManagementService」)
クライアント定義ファイルは,クライアント側の動作を制御するファイルで,「c4webcl.properties 」というファイル名称で利用者が作成します。
このサンプルプログラムでは,トレースファイ
ル,およびアプリケーションログのプレフィクスとして,「InventoryManagementService」を設定する,クライアント定義ファイルが用意されています。

注 各ファイルの格納場所については,「付録C.4(c) 商品手配サンプルプログラムの構成」を参照してください。

 

在庫管理サービスアダプタの追加と定義手順を次に示します。

  1. ツリービューのサービス定義一覧で右クリックして「サービスアダプタ追加」を選択します。
    追加するサービスアダプタから利用するサービス種別を設定するダイアログが表示されます。
  2. ドロップダウンリストから「Webサービス」を選択して,[次へ]ボタンをクリックします。
    サービスアダプタの追加に必要な情報を入力するダイアログが表示されます。
  3. サービス名に「在庫管理」を,WSDLファイルには「InventoryManagementService.wsdl」を入力して,[次へ]ボタンをクリックします。

    [図データ]

    ポートを指定するダイアログが表示されます。
  4. ドロップダウンリストでポート「InventoryManager」を選択して,[終了]ボタンをクリックします。

    [図データ]

    アダプタ「在庫管理サービスアダプタ」が作成され,サービスアダプタ定義画面が表示されます。
  5. サービスアダプタ定義画面の基本画面で,サービスIDを「InvAdp」に変更します。

    [図データ]

  6. サービスアダプタ定義画面の詳細画面で,[…]ボタンをクリックして,クライアント定義ファイル「c4webcl.properties」を指定します。
    商品手配サンプルプログラムでは,次の場所にあります。
    <Cosminexusインストールディレクトリ>\CSCTE\Samples\商品手配\Service\InventoryManagementService\c4webcl.properties
  7. [ファイル]−[保管]を選択します。
(b) 配送受付サービスアダプタを定義してみましょう

配送受付サービスアダプタは,配送受付サービス用WSDL(DeliveryService.wsdl)を使用して定義します。配送受付サービスアダプタを定義するときに設定する値を次の表に示します。

表C-9 配送受付サービスアダプタを定義するときに設定する値

項目名 設定する値 説明
サービス部品の種別 Webサービス 呼び出すサービス部品の種別に合わせて設定したサービスアダプタの種別です。このサンプルプログラムのサービス部品は,Webサービスのためサービスアダプタの種別もWebサービスを設定します。
サービス名 配送受付 アダプタの名称を指定します。
WSDLファイル DeliveryService.wsdl WSDLには,Webサービスがどのような機能を持ち,それを利用するためにはどのような要求をすればよいのか,などを記述する方法が定義されています。配送受付サービスアダプタは,配送受付サービス用WSDL(DeliveryService.wsdl)を使用して作成します。
Portの指定 Delivery 配送受付サービスアダプタのポートを指定します。
サービスID DelAdp 配送受付サービスアダプタのIDを指定します。
クライアント定義ファイル c4webcl.properties
(次の内容が設定されています。「c4web.logger.log_file_prefix=DeliveryService」)
クライアント定義ファイルは,クライアント側の動作を制御するファイルで,「c4webcl.properties 」というファイル名称で利用者が作成します。
このサンプルプログラムでは,トレースファイ
ル,およびアプリケーションログのプレフィクスとして,「DeliveryService」を設定する,クライアント定義ファイルが用意されています。

注 各ファイルの格納場所については,「付録C.4(c) 商品手配サンプルプログラムの構成」を参照してください。

 

配送受付サービスアダプタの追加と定義手順を次に示します。

  1. ツリービューのサービス定義一覧で右クリックして「サービスアダプタ追加」を選択します。
    追加するサービスアダプタから利用するサービス種別を設定するダイアログが表示されます。
  2. ドロップダウンリストから「Webサービス」を選択して,[次へ]ボタンをクリックします。
    サービスアダプタの追加に必要な情報を入力するダイアログが表示されます。
  3. サービス名に「配送受付」を,WSDLファイルには「DeliveryService.wsdl」を入力して,[次へ]ボタンをクリックします。
    ポートを指定するダイアログが表示されます。

    [図データ]

  4. ドロップダウンリストでポート「Delivery」を選択して,[終了]ボタンをクリックします。

    [図データ]

    アダプタ「配送受付サービスアダプタ」が作成され,サービスアダプタ定義画面が表示されます。
  5. サービスアダプタ定義画面の基本画面で,サービスIDを「DelAdp」に変更します。

    [図データ]

  6. サービスアダプタ定義画面の詳細画面で,[…]ボタンをクリックして,クライアント定義ファイル「c4webcl.properties」を指定します。
    商品手配サンプルプログラムでは,次の場所にあります。
    <Cosminexusインストールディレクトリ>\CSCTE\Samples\商品手配\Service\DeliveryService\c4webcl.properties
  7. [ファイル]−[保管]を選択します。
(c) 商品手配ビジネスプロセスを定義してみましょう

商品手配サンプルプログラムの商品手配ビジネスプロセスでは,次のようなプロセスで処理します。

  1. 商品手配ビジネスプロセスは,サービスリクエスタから入力された商品名と個数の情報を受け取ります。
  2. 在庫管理サービスアダプタを介して在庫管理サービスを呼び出します。
  3. 在庫管理サービスを呼び出した結果,在庫がない場合は,「*」(在庫無し)をサービスリクエスタに返します。
  4. 在庫がある場合は,配送受付サービスアダプタを介して配送受付サービスを呼び出し,配送番号を取得します。
  5. サービスリクエスタに,取得した配送番号を返します。

なお,商品手配ビジネスプロセスはユーザ定義受付を利用して呼び出すため,WSDL(ArrangementService.wsdl)を使用してユーザ定義受付を作成します。

商品手配サンプルプログラムのビジネスプロセスは,次の流れで定義します。

  1. 新規ビジネスプロセスを追加します
  2. ユーザ定義受付を追加します
  3. 変数を設定します
  4. アクティビティを配置します
  5. アクティビティを定義します
  6. ビジネスプロセスの定義を終了します
 

商品手配ビジネスプロセスを追加するときに設定する値を表C-10に示します。

表C-10 商品手配ビジネスプロセスを追加するときに設定する値

項目名 設定する値 説明
ビジネスプロセス名 商品手配 ビジネスプロセスの名称を指定します。
ステータスの永続化 yes データベースに記録を残すかどうかを指定します。記録をとると,プロセスの進捗状況などを把握できます。このサンプルプログラムでは,データベースに記録を残すため,「yes」を選択します。
BPELファイル インポートする チェックオフ 上流工程でツールを使って作成したBPELをインポートする場合は,チェックを入れます。インポートすると,ビジネスプロセスに必要なアクティビティが自動的に表示されます。このサンプルプログラムでは,インポートしないので,チェックを外します。
サービスID ArrBP ビジネスプロセスのIDを指定します。

商品手配ビジネスプロセスの追加手順を次に示します。

  1. ツリービューのサービス定義一覧で,右クリックして[ビジネスプロセス追加]を選択します。
    ビジネスプロセス定義を追加するためのダイアログが表示されます。
  2. [ビジネスプロセス名]に「商品手配」を入力し,[ステータスの永続化]で「yes」を選択します。[BPELファイル]の[インポートする]はチェックを外します。

    [図データ]

  3. [終了]ボタンをクリックします。
    ビジネスプロセス「商品手配」が作成され,ビジネスプロセス定義画面が表示されます。
  4. ビジネスプロセス定義画面のプロパティービューで,サービスIDを「ArrBP」に変更します。

    [図データ]

 

商品手配サンプルプログラムでは,サービス部品に合わせた受付を使用して,サービスリクエスタからの要求を受け付けます。そのため,ユーザ定義受付が必要になります。ユーザ定義受付を追加するときに設定する値を表C-12に示します。

表C-11 ユーザ定義受付を追加するときに設定する値

受付名 サービス受付 ユーザ定義受付の名称を指定します。
WSDLファイル ArrangementService.wsdl 使用するWSDLファイル名を指定します。
ポート名 Arrangement ポート名を指定します。

商品手配のユーザ定義受付の追加手順を次に示します。

  1. ツリービューのサービス定義一覧からビジネスプロセス名[商品手配]を選択し,右クリックして「ユーザ定義受付追加」を選択します。
    ユーザ定義受付を追加するためのダイアログが表示されます。

    [図データ]

  2. 受付名に「サービス受付」を入力し,WSDLファイルに「ArrangementService.wsdl」を入力します。

    [図データ]

  3. [次へ]ボタンをクリックします。
  4. ドロップダウンリストでポート「Arrangement」を選択して,[終了]ボタンをクリックします。

    [図データ]

    ユーザ定義受付がビジネスプロセスに追加され,ユーザ定義受付定義画面が表示されます。

    [図データ]

 

ビジネスプロセスでは,アクティビティを定義するときに変数を使用します。そのため,使用する変数をあらかじめ設定してから,アクティビティを定義します。商品手配ビジネスプロセスで使用する変数を次の表に示します。

表C-12 商品手配ビジネスプロセスで使用する変数

変数名 種別 xsdファイル
入力データ messageType 入力データ.xsd
出力データ messageType 出力データ.xsd
在庫引当入力データ messageType 在庫引当入力データ.xsd
在庫引当出力データ messageType 在庫引当出力データ.xsd
配送手配入力データ messageType 配送手配入力データ.xsd
配送手配出力データ messageType 配送手配出力データ.xsd

商品手配ビジネスプロセスで使用する変数の設定手順を次に示します。

  1. ビジネスプロセス定義画面のキャンバス上の[変数・相関セット]アイコンをダブルクリックします。
    [変数・相関セット一覧]ダイアログが表示されます。
  2. [変数一覧]を選択します。変数名に「入力データ」を入力し,種別は,ドロップダウンリストから「messageType」を選択します。
  3. [取込]ボタンをクリックします。
    [電文フォーマットの取込]ダイアログが表示されます。
  4. [受付名]を選択して,ドロップダウンリストから「サービス受付」を選択します。
  5. [オペレーション名]はドロップダウンリストから「arrangeItem」を,[電文種別]はドロップダウンリストから「要求電文」を選択します。[電文フォーマット]に「入力データ」を入力します。

    [図データ]

  6. [OK]ボタンをクリックします。
    [電文フォーマットの取込]ダイアログが閉じます。
  7. [変数・相関セット一覧]ダイアログの[追加]ボタンをクリックします。
    変数一覧に変数「入力データ」が追加されます。
  8. 変数「出力データ」,「在庫引当入力データ」,「在庫引当出力データ」,「配送手配入力データ」および「配送手配出力データ」についても,手順2.〜7.と同様の操作で設定します。

    [図データ]

    [図データ]

    [図データ]

    [図データ]

    [図データ]

    [変数・相関セット一覧]ダイアログ [電文フォーマットの取込]ダイアログ
    変数名 種別 サービス/受付 サービス/受付の名称 オペレーション名 電文種別 電文フォーマット
    出力データ messageType 受付名 サービス受付 arrangeItem 応答電文 出力データ
    在庫引当入力データ messageType サービス名 在庫管理 reserveItem 要求電文 在庫引当入力データ
    在庫引当出力データ messageType サービス名 在庫管理 reserveItem 応答電文 在庫引当出力データ
    配送手配入力データ messageType サービス名 配送受付 deliverItem 要求電文 配送手配入力データ
    配送手配出力データ messageType サービス名 配送受付 deliverItem 応答電文 配送手配出力データ
  9. [変数・相関セット一覧]ダイアログの[OK]ボタンをクリックします。
    これで変数が設定できました。

    [図データ]

 

商品手配サンプルプログラムのビジネスプロセスに必要なアクティビティを次の表に示します。

表C-13 商品手配サンプルプログラムのビジネスプロセスに必要なアクティビティ

設定する値 説明
受付アクティビティ サービスリクエスタからの応答を受け付けます。
データ変換アクティビティ 入力時,出力時,在庫引当時,および配送手配時のデータを編集します。
サービス呼出アクティビティ 在庫管理サービスまたは配送受付サービスを呼び出します。
分岐開始アクティビティ 条件(在庫の有無)による処理をします。
応答アクティビティ 処理結果をサービスリクエスタへ返します。
分岐終了アクティビティ 条件(在庫の有無)による処理を終了します。

アクティビティの配置手順を次に示します。

  1. パレットから次のアクティビティをクリックし,キャンバス上の適当な位置にクリックして配置します。
    • 受付アクティビティ
    • データ変換アクティビティ
    • サービス呼出アクティビティ
    • 分岐開始アクティビティ
    • データ変換アクティビティ
    • 応答アクティビティ
    • データ変換アクティビティ
    • サービス呼出アクティビティ
    • データ変換アクティビティ
    • 応答アクティビティ
    • 分岐終了アクティビティ
  2. アクティビティを連結するために,パレットの[コネクション]をクリックします。
  3. 連結元である開始アクティビティをクリックします。
  4. 連結先である受付アクティビティをクリックします。
    これで開始アクティビティと受付アクティビティを連結できました。
  5. 受付アクティビティから終了アクティビティまでを,手順2.〜4.と同様の操作で一つずつアクティビティを連結します。

    [図データ]

 

キャンバスへ配置した各アクティビティの内容を定義します。

<受付アクティビティ>

  1. キャンバスの受付アクティビティをダブルクリックします。
    [受付アクティビティ]ダイアログが表示されます。
  2. 次の内容を入力します。

    [図データ]

    項目名 設定する値 説明
    アクティビティ名 受付 アクティビティの名称を入力します。
    オペレーション名 arrangeItem サービスリクエスタから在庫管理サービスを呼び出すときに利用するオペレーションの名称を入力します。
    割当変数 入力データ ビジネスプロセスの要求電文に割り当てる変数をドロップダウンリストから選択します。
    割当相関セット群 設定なし 相関セットグループをアクティビティに割り当てる場合に設定します。このサンプルプログラムでは使用しないため,設定しません。
    通信モデル 同期 オペレーションの通信モデルを指定します。このサンプルプログラムで使用する商品手配サービスは,Webサービスのため,「同期」を設定します。
    インスタンス生成 yes 要求電文を受け付けたときに,プロセスを初期化するかどうかを選択します。このサンプルプログラムでは,初期化するため「yes」を設定します。
  3. [OK]ボタンをクリックします。
 

<データ変換アクティビティ>(在庫引当の前処理の場合)

  1. キャンバスのデータ変換アクティビティをダブルクリックします。
    [データ変換アクティビティ]ダイアログが表示されます。
  2. 次の内容を入力します。

    [図データ]

    項目名 設定する値 説明
    アクティビティ名 在庫引当前処理 アクティビティの名称を入力します。
    変数(変換元変数) 入力データ データの変換元になる変数をドロップダウンリストから選択し,[追加]ボタンをクリックします。
    変数(変換先変数) 在庫引当入力データ データの変換先になる変数をドロップダウンリストから選択します。
    データ変換定義 在庫引当前処理 変数の変換に使うデータ変換定義ファイルの名称を入力します。
  3. [OK]ボタンをクリックします。
  4. キャンバスのデータ変換アクティビティを右クリックし,[マッピング定義起動]を選択します。
    [ルート要素選択]ダイアログが表示されます。
  5. 変換元のスキーマ論理名「入力データ」のルート要素をクリックして,ドロップダウンリストから「ars:arrangeItem」を選択します。
  6. 変換先のスキーマ論理名「在庫引当入力データ」のルート要素をクリックして,ドロップダウンリストから「ims:reserveItem」を選択します。

    [図データ]

  7. [OK]ボタンをクリックします。
    データ変換定義画面が表示されます。

    [図データ]

  8. データ変換定義画面のパレットから「マッピング」を選択します。
  9. マッピング元となる変換元ノードのノードアダプタをクリックします。
  10. マッピング先となる変換先ノードのノードアダプタをクリックします。
    マッピング線が設定されます。

    [図データ]

 

<データ変換アクティビティ>(在庫なしの場合)

  1. キャンバスのデータ変換アクティビティをダブルクリックします。
    [データ変換アクティビティ]ダイアログが表示されます。
  2. 次の内容を入力します。

    [図データ]

    項目名 設定する値 説明
    アクティビティ名 在庫なし設定 アクティビティの名称を入力します。
    変数(変換元変数) 在庫引当出力データ データの変換元になる変数をドロップダウンリストから選択し,[追加]ボタンをクリックします。
    変数(変換先変数) 出力データ データの変換先になる変数をドロップダウンリストから選択します。
    データ変換定義 在庫なし設定 変数の変換に使うデータ変換定義ファイルの名称を入力します。
  3. [OK]ボタンをクリックします。
  4. キャンバスのデータ変換アクティビティを右クリックし,[マッピング定義起動]を選択します。
    [ルート要素選択]ダイアログが表示されます。
  5. 変換元のスキーマ論理名「在庫引当出力データ」のルート要素をクリックして,ドロップダウンリストから「ims:reserveItemResponse」を選択します。
  6. 変換先のスキーマ論理名「出力データ」のルート要素クリックして,ドロップダウンリストから「ars:arrangeItemResponse」を選択します。

    [図データ]

  7. [OK]ボタンをクリックします。
    データ変換定義画面が表示されます。

    [図データ]

  8. データ変換定義画面のパレットから[マッピング]を選択します。
  9. マッピング元となる変換元ノードのノードアダプタをクリックします。
  10. マッピング先となる変換先ノードのノードアダプタをクリックします。
    マッピング線が設定されます。

    [図データ]

 

<データ変換アクティビティ>(配送手配の前処理の場合)

  1. キャンバスのデータ変換アクティビティをダブルクリックします。
    [データ変換アクティビティ]ダイアログが表示されます。
  2. 次の内容を入力します。

    [図データ]

    項目名 設定する値 説明
    アクティビティ名 配送手配前処理 アクティビティの名称を入力します。
    変数(変換元変数) 在庫引当出力データ データの変換元になる変数をドロップダウンリストから選択し,[追加]ボタンをクリックします。
    変数(変換先変数) 配送手配入力データ データの変換先になる変数をドロップダウンリストから選択します。
    データ変換定義 配送手配前処理 変数の変換に使うデータ変換定義ファイルの名称を入力します。
  3. [OK]ボタンをクリックします。
  4. キャンバスのデータ変換アクティビティを右クリックし,[マッピング定義起動]を選択します。
    [ルート要素選択]ダイアログが表示されます。
  5. 変換元のスキーマ論理名「在庫引当出力データ」のルート要素をクリックして,ドロップダウンリストから「ims:reserveItemResponse」を選択します。
  6. 変換先のスキーマ論理名「配送手配入力データ」のルート要素をクリックして,ドロップダウンリストから「dls:deliverItem」を選択します。

    [図データ]

  7. [OK]ボタンをクリックします。
    データ変換定義画面が表示されます。

    [図データ]

  8. データ変換定義画面のパレットから「マッピング」を選択します。
  9. マッピング元となる変換元ノードのノードアダプタをクリックします。
  10. マッピング先となる変換先ノードのノードアダプタをクリックします。
    マッピング線が設定されます。

    [図データ]

 

<データ変換アクティビティ>(配送番号の設定の場合)

  1. キャンバスのデータ変換アクティビティをダブルクリックします。
    [データ変換アクティビティ]ダイアログが表示されます。
  2. 次の内容を入力します。

    [図データ]

    項目名 設定する値 説明
    アクティビティ名 配送番号設定 アクティビティの名称を入力します。
    変数(変換元変数) 配送手配出力データ データの変換元になる変数をドロップダウンリストから選択し,[追加]ボタンをクリックします。
    変数(変換先変数) 出力データ データの変換先になる変数をドロップダウンリストから選択します。
    データ変換定義 配送番号設定 変数の変換に使うデータ変換定義ファイルの名称を入力します。
  3. [OK]ボタンをクリックします。
  4. キャンバスのデータ変換アクティビティを右クリックし,[マッピング定義起動]を選択します。
    [ルート要素選択]ダイアログが表示されます。
  5. 変換元のスキーマ論理名「配送手配出力データ」のルート要素をクリックして,ドロップダウンリストから「dls:deliverItemResponse」を選択します。
  6. 変換先のスキーマ論理名「出力データ」のルート要素をクリックして,ドロップダウンリストから「ars:arrangeItemResponse」を選択します。

    [図データ]

  7. [OK]ボタンをクリックします。
    データ変換定義画面が表示されます。

    [図データ]

  8. データ変換定義画面のパレットから[マッピング]を選択します。
  9. マッピング元となる変換元ノードのノードアダプタをクリックします。
  10. マッピング先となる変換先ノードのノードアダプタをクリックします。
    マッピング線が設定されます。

    [図データ]

 

<サービス呼出アクティビティ>(在庫を引き当てる場合)

  1. キャンバスのサービス呼出アクティビティをダブルクリックします。
    [サービス呼出アクティビティ]ダイアログが表示されます。
  2. 次の内容を入力します。

    [図データ]

    項目名 設定する値 説明
    アクティビティ名 在庫引当 アクティビティの名称を入力します。
    サービス名 在庫管理 要求電文を送信して呼び出すサービス部品の名称をドロップダウンリストから選択します。
    オペレーション名 reserveItem [サービス名]で指定したサービス部品(在庫管理)のオペレーションのうち,実際に呼び出すオペレーションの名称を指定します。
    通信モデル 同期 [オペレーション名]で指定したオペレーションに設定されている通信モデルが表示されます。
    要求電文用割当変数 在庫引当入力データ 在庫管理サービスを呼び出す要求電文に割り当てる変数をドロップダウンリストから選択します。
    応答電文用割当変数 在庫引当出力データ 同期オペレ−ションから受け取る応答電文に割り当てる変数をドロップダウンリストから選択します。
    割当相関セット群 なし 相関セットグループをアクティビティに割り当てる場合に設定します。このサンプルプログラムでは使用しないため,設定しません。
 

<サービス呼出アクティビティ>(配送を手配する場合)

  1. キャンバスのサービス呼出アクティビティをダブルクリックします。
    [サービス呼出アクティビティ]ダイアログが表示されます。
  2. 次の内容を入力します。

    [図データ]

    項目名 設定する値 説明
    アクティビティ名 配送手配 アクティビティの名称を入力します。
    サービス名 配送受付 要求電文を送信して呼び出すサービス部品の名称をドロップダウンリストから選択します。
    オペレーション名 deliverItem [サービス名]で指定したサービス部品(配送手配)のオペレーションのうち,実際に呼び出すオペレーションの名称を指定します。
    通信モデル 同期 [オペレーション名]で指定したオペレーションに設定されている通信モデルが表示されます。
    要求電文用割当変数 配送手配入力データ 配送手配サービスを呼び出す要求電文に割り当てる変数をドロップダウンリストから選択します。
    応答電文用割当変数 配送手配出力データ 同期オペレ−ションから受け取る応答電文に割り当てる変数をドロップダウンリストから選択します。
    割当相関セット群 なし 相関セットグループをアクティビティに割り当てる場合に設定します。このサンプルプログラムでは使用しないため,設定しません。
 

<応答アクティビティ>(在庫がない場合)

  1. キャンバスの応答アクティビティをダブルクリックします。
    [応答アクティビティ]ダイアログが表示されます。
  2. 次の内容を入力します。

    [図データ]

    項目名 設定する値 説明
    アクティビティ名 応答_在庫なしエラー アクティビティの名称を入力します。
    オペレーション名 arrangeItem 対応する受付アクティビティに指定したオペレーション名を入力します。
    割当変数 出力データ ビジネスプロセスの応答電文に割り当てる変数をドロップダウンリストから選択します。
    割当相関セット群: 設定なし 相関セットグループをアクティビティに割り当てる場合に入力します。このサンプルプログラムでは使用しないため,設定しません。
    フォルト名 設定なし フォルト処理として応答アクティビティを定義して,サービスリクエスタにフォルトが発生したことを示す応答電文を送信する場合のフォルトの名称を入力します。このサンプルプログラムではフォルト処理を使用しないため,設定しません。
 

<応答アクティビティ>(配送手配が成功した場合)

  1. キャンバスの応答アクティビティをダブルクリックします。
    [応答アクティビティ]ダイアログが表示されます。
  2. 次の内容を入力します。

    [図データ]

    項目名 設定する値 説明
    アクティビティ名 応答_手配成功 アクティビティの名称を入力します。
    オペレーション名 arrangeItem 対応する受付アクティビティに指定したオペレーション名を入力します。
    割当変数 出力データ ビジネスプロセスの応答電文に割り当てる変数をドロップダウンリストから選択します。
    割当相関セット群: 設定なし 相関セットグループをアクティビティに割り当てる場合に入力します。このサンプルプログラムでは使用しないため,設定しません。
    フォルト名 設定なし フォルト処理として応答アクティビティを定義して,サービスリクエスタにフォルトが発生したことを示す応答電文を送信する場合のフォルトの名称を入力します。このサンプルプログラムではフォルト処理を使用しないため,設定しません。
 

<分岐開始クティビティ>

  1. キャンバスの分岐開始アクティビティをダブルクリックします。
    [分岐開始アクティビティ]ダイアログが表示されます。
  2. アクティビティ名に「在庫引当結果チェック」を入力します。
  3. [遷移先]が[在庫なし設定]の行をクリックし,[上へ]ボタンをクリックして,一番上の行に移動します。
  4. 一番上の行を選択し,[条件設定]ボタンをクリックします。
    [条件設定]ダイアログが表示されます。
  5. 次の内容を入力します。

    [図データ]

    項目名 設定する値 説明
    条件名 在庫なし 在庫引当チェックの結果,在庫がない場合の条件を指定します。
    変数 在庫引当出力データ 条件式で使用する変数をドロップダウンリストから選択します。
    条件式 csc:getVariableData("在庫引当出力データ", "/*[local-name()='reserveItemResponse' and namespace-uri()='http://sample/InventoryManagementService']/*[local-name()='ReservationNumber' and namespace-uri()='http://sample/InventoryManagementService']")="*" 在庫がない場合の条件式をXPath式で指定します。
  6. [OK]ボタンをクリックします。
    分岐アクティビティ画面に戻ります。
  7. [遷移先]が[配送手配前処理]の[優先順位]をクリックし,ドロップダウンリストから「Default」を選択します。
    「Default」を選択すると,条件の設定は不要になります。

    [図データ]

  8. [OK]ボタンをクリックします。
 

<分岐終了アクティビティ>

  1. キャンバスの分岐終了アクティビティをクリックします。
    プロパティービューに,分岐終了アクティビティの内容が表示されます。
  2. アクティビティ名に,「在庫引当結果チェック_終了」を入力します。

    [図データ]

 

すべてのアクティビティを定義したら,[ファイル]−[保管]を選択して,ビジネスプロセスの定義を終了します。

(d) 検証とパッケージングをしてみましょう

次に示すものは,定義した内容が正しいかどうか検証してから,パッケージングします。

検証とパッケージングは,Helloサービスアダプタの検証とパッケージングの手順と同様です。手順の詳細については,「付録C.3(1)(b) Helloサービスアダプタの検証とパッケージングをしてみましょう」を参照してください。