PEXA Serviceについて

チュートリアル

テストツール

定義ファイル

基本プロセス

拡張プロセス

Condition

セッション

モデル

リファレンス

環境設定

目次

  1. はじめに
  2. ServiceClientの使用方法
  3. ServiceClientエントリファイルの全体構成
  4. servicesセクション
  5. ServiceClientエントリファイルのサンプル


はじめに

このドキュメントは、PEXAサービスフレームワークで使用するServiceClientエントリファイルについて解説する物です。

ServiceClientエントリファイルは、サービスの単体テストなどを行うためのServiceClientプログラムに読み込ませるパラメータファイルです。
呼び出したいサービスの名前と呼出パラメータを指定することで、連続して複数個のサービス呼出が行えます。

また、ServiceSchedule定義ファイルと組み合わせて、サービスをスケジュール実行する際にも使用されます。

記述形式はPEXA独自のプロパティ形式となります。このプロパティ形式の書式については、リファレンスを参照して下さい。


ServiceClientの使用方法

ServiceClientとは、PEXAのサービス実行エンジンを呼び出して任意のサービスを呼び出すことができるツールです。
サービス定義ファイルで記述された処理の単体テストを行う場合等に使用します。

以下に使用手順を記載します。

環境変数の設定

実行前に、以下の環境変数を設定して下さい。

  • PRJNAME : プロジェクト名
  • PRJHOME : テスト対象プロジェクトのワークスペースのパス
  • JBOSS_HOME : JBossのインストール先フォルダ
例:CSPDという名前のプロジェクトの場合
set PRJNAME=cspd
set PRJHOME=C:\develop\eclipse\workspace\cspd
set JBOSS_HOME=C:\develop\jboss\4.2.3.GA


ServiceClientエントリファイルの記述

ServiceClientで呼び出したい対象のサービス名や呼出時のパラメータを記述するファイルを作成します。
中身はテキスト形式のファイルで、名前や拡張子は任意です。

記述形式については後述します。


ServiceClientの実行

各プロジェクトのワークスペースにWindows上で実行するためのバッチファイルがあります。

%PRJHOME%\tool\service\ServiceClient.bat
上記のファイルでServiceClientを実行します。
実行時には引数として、2で作成したサービス呼出ファイルを指定して下さい。

例:
ServiceClient.bat C:\develop\work\service_client.entry
なお、このバッチファイルを使用した場合、接続先のJBossはServiceClientを実行したローカル環境で動作している物となります。 この接続先に関する設定は
%PRJHOME%\etc\config\jboss\jndi.properties
に記述されていますので、必要であれば書き換えて使用して下さい。



ServiceClientエントリファイルの全体構成

ServiceClientエントリファイルの全体構成について、以下に示します。
servicesセクションの中に、呼び出したいサービスの情報を列挙します。

それぞれのセクションの詳細については、以降で解説します。

;---------------------------------------------------------------
; Release-Date:     $Date:: 2010-11-16 13:45:58 #$
; Release-Version:  $Revision: 5636 $
; Author:           $Author: morishita $
; First-Created-On: 2007/04/16
; First-Created-By: Daisuke Morishita
;---------------------------------------------------------------
; サービスの呼出情報
;---------------------------------------------------------------
[services
    サービス呼出定義1
    ,
    サービス呼出定義2
    ,
    サービス呼出定義3
        :
        :
        :
]


servicesセクション

書式 :

;---------------------------------------------------------------
; サービスの呼出情報
;---------------------------------------------------------------
[services
    (service名
        print属性(0|1)   
        add_session宣言部(0|1)
        add_result宣言部(0|1)
        sessionセクション(0|1)
    )
    ,
	     .
	     .
	     .	
]
	
記述注:
    属性        あらかじめ決められた値を選択する(true/falseなど)
    宣言部      値または、値のリストを設定する
    セクション  入れ子で他の属性、宣言部、セクションを保持する可能性がある
                (値又は、値のリストが設定される場合もある)

    (1):必須
    (0|1):オプション
    (1以上):一個以上必須
    (0以上):0個以上(オプション)

記述例 :
;---------------------------------------------------------------
; サービスの呼出情報
;---------------------------------------------------------------
[services
    (CreateAlert
        (session
            実行時刻    $実行時刻:&Today
        )
    )
    ,
    (CreateReminder
        (session
            実行時刻    $実行時刻:&Today
        )
    )
]

説明 :
このセクションは必須です。
servicesセクションは、サービスの呼出情報を記述するセクションです。

呼び出したいサービスの指定やパラメータ設定をここに記述します。

属性値 :
servicesセクションの属性値は以下の通り。

print属性

説明 :
非必須です。
サービス実行後にServiceSessionの内容を標準出力にダンプするか否かを指定する。
省略時は"true"出力するが指定されたと見なされる。

キー:print(固定|option)
形式:Key・固定値
区分:"true"/"false"
    true    出力する
    false   出力しない

記述例 :

print  true


add_session宣言

説明 :
非必須です。
Serivice実行時ににServiceに渡すServiceSessionに設定するServiceSessionキー(複数可)を指定する。
"all"が指定されるか、省略された場合は、すべてのServiceSessionキーがServiceに渡される

キー:add_session(固定|オプション)
形式:Key・固定値または、Key・複数値

記述例 :

記述1:all
    add_session all
記述2:ServiceSessionキーを指定する
    記述例:ServiceSessionキー"A"を指定する場合
            add_session A
    記述例2:ServiceSessionキー"A"と"B"を指定する場合
            add_session A,B


add_result宣言

説明 :
非必須です。
Service実行後にServiceが返したServiceSssionから取り出すServiceSessionキーを指定する。
指定がないか、"all"が指定された場合は、すべての項目を取得する。

キー:add_result(固定|オプション)
形式:Key・固定値または、Key・複数値

記述例 :

記述1:"all"を固定
    add_result  all

記述2:ServiceSessionキーを指定する
    add_result  A
    add_result  A,B


sessionセクション

説明 :
非必須です。
Service実行前にServiceSessionに対する編集内容を記述する。
書式についてはこちらを参照して下さい。

キー:session(固定|オプション)
形式:マップ又は、順序付マップ

記述例 :

(CreateAlert
    (session
        実行時刻    $実行時刻:&Today
    )
)



ServiceClientエントリファイルのサンプル

;---------------------------------------------------------------
; Release-Date:     $Date:: 2010-11-16 13:45:58 #$
; Release-Version:  $Revision: 5636 $
; Author:           $Author: morishita $
; First-Created-On: 2007/04/16
; First-Created-By: Daisuke Morishita
;---------------------------------------------------------------
; サービスの呼出情報
;---------------------------------------------------------------
[services
    ;-----------------------------------------------------------
    ; アラート生成サービスの呼出
    ;-----------------------------------------------------------
    (CreateAlert
        (session
        )
    )
]


更新情報

  • 最終更新者 : $Author: morishita $
  • 最終更新日時 : $Date:: 2010-11-16 13:45:58 #$
  • バージョン : $Revision: 5636 $



Copyright © 2006, Atrris Corporation