PEXA Supportについて
PEXAプロパティ
トランスレータ
印刷フレームワーク
AETフレームワーク
ワークフロー
動的フォーム
変換フレームワーク
テンプレートエンジン
カレンダー
タスクスケジューラー
|
概要
|
このドキュメントは、PEXAプロパティ形式の書式について説明する物です。
PEXAプロパティ形式のテキストファイルは、PEXA実行エンジンが読み込む各種成果物の記述形式となります。
Java標準のプロパティファイルとは異なり、セクションやリストを記述することが出来ます。
PEXA内部のAPIによって、このファイルの内容はkeyとvalueの組を格納したMapに変換されます。
|
|
パーサーAPI
|
PEXAプロパティ形式のテキストファイルを読み込んで、MapおよびListの固まりに変換するパーサーが用意されています。
pexa.share.util.prop.PropertyLoader
上記のクラスに、いくつかのstaticメソッドが用意されており、それらをコールすることで変換を行うことが出来ます。
PEXAエンジンの各種機能も、このクラスのメソッドをコールすることでそれぞれが読み込むべき成果物ファイルの内容をMapに変換しています。
詳細はPEXA APIのJavadocを参照してください。
|
|
文字エンコーディングの指定
|
PEXAプロパティ形式のファイルを実行エンジンに読み込ませる際に、エンコーディングを指定する方法がいくつか用意されています。
特に何も指定が無い場合は、JavaVMを実行しているプラットフォームのデフォルトエンコーディングで読み込みを試みます。
それ以外のエンコーディングで読み込ませたい場合は、以下のいずれかの方法をとってください。
実行時パラメータ
|
実行時パラメータで指定する場合、JavaVM起動時のパラメータとして以下を指定してください。
-Dencoding=エンコーディング名
例えばUTF-8を指定する場合は以下のようになります。
-Dencoding=MS932
|
|
プラグインエントリに記述
|
ワークスペース中の以下のファイルに指定することが出来ます。
/src/plugins/pexa_plugins.entry
上記のファイル中に以下のような記述をしておくことでエンコーディングが指定できます。
encoding="UTF-8"
|
|
ファイル自身にエンコーディング名を記述
|
XMLファイルの先頭のxml宣言部と同じような形で、ファイル自身の中にそのファイルのエンコーディング指定を記述することが出来ます。
以下のような記述をPEXAプロパティ形式ファイルの先頭に記述してください。
#encoding="UTF-8"
このように指定することで、このファイルを読み込んだパーサーのAPIが指定されたエンコーディングでファイルを読み込んでMapに変換します。
|
|
|
|
プロパティ形式書式
|
基本的にKey,Valueの組で記述
または「=」をいれてKeyとValueを明確にくぎってもよい
key,value側が空白を含む場合は「"」でクオート
valueが配列になる場合は「,」で区切って記述。ただし、「,」の前後に空白は入れない
値が組(マップ)になる場合は()で記述
- (key
- childKey1 value1
- childKey2 value2
- ...
- )
値が組でかつ取得順番を記述順に指定したい場合は{}で記述(順序付マップ)
- {key
- childeKey1 value1
- childKey2 value2
- ...
- }
値が組でかつ配列になる場合は[]で記述して配列要素の区切り毎に「,」のみの行を入れる(マップのリスト)
- [key
- childKey1 value1_1
- childKey2 value1_2
- ,
- childKey1 value2_1
- childKey2 value2_2
- ,
- ...
- ]
コメント
|
|
記述例
|
サポートフレームワークのTranslator定義の記述例をサンプルとして以下に挙げます。
;; ---------------------------------------------------------------
;; Current-Module: default.native
;; Release-Date: $Date:: 2008-11-21 11:47:31 #$
;; Release-Version: $Revision: 2751 $
;; First-Created-On: 2006/03/14
;; First-Created-By:
;; Copy-Right-Owner:
;; ---------------------------------------------------------------
;;
;; デフォルトのtranslateルールを定義するファイル
;;
;;-----------------------------------------------------------------
translator_name default
translator_location client
translator_type class
;;-----------------------------------------------------------------
;; このトランスレータの適用ロケール
;;-----------------------------------------------------------------
(locale
lang ja
country JP
)
;;-----------------------------------------------------------------
;; クラス名に対応させるtranslateルール
;;-----------------------------------------------------------------
(class
;;-----------------------------------------------------------------
;; 日付
;;-----------------------------------------------------------------
(java.util.Date
translator pexa.client.std.trans.DefaultDateTranslator
)
;;-----------------------------------------------------------------
;; 数値
;;-----------------------------------------------------------------
(java.math.BigDecimal
translator pexa.client.std.trans.DefaultNumberTranslator
)
;;-----------------------------------------------------------------
;; 年月
;;-----------------------------------------------------------------
(pexa.share.util.cont.YearMonth
translator pexa.client.std.trans.DefaultYearMonthTranslator
)
;;-----------------------------------------------------------------
;; 有効フラグのビジネスオブジェクト
;;-----------------------------------------------------------------
(pexa.share.util.business.ValidityFlag
(static
VALID 有効
INVALID 無効
)
)
;;-----------------------------------------------------------------
;; 削除フラグのビジネスオブジェクト
;;-----------------------------------------------------------------
(pexa.share.util.business.RemovedFlag
(static
REMOVED 削除済み
NOT_REMOVED 未削除
)
)
)
|
|
更新情報
|
- 最終更新者 : $Author: morishita $
- 最終更新日時 : $Date:: 2008-11-21 11:47:31 #$
- バージョン : $Revision: 2751 $
|
|
|