View 1.0.0 for maskat1.4.0 - Release Notes
file info- category(Tag)
- root
- file name
- proposal_-_JavaEE_Framework_1.0.0_for_maskat1.4.0_-_Notes
- last update
- 2007-05-29 16:48
- type
- Plain Text
- editor
- Nakamura Hikoichirou
- description
- 1.0.0 for maskat1.4.0 - Release Notes
- language
- English
- translate
マスカットJavaEEフレームワーク
対応するマスカットのバージョンは1.4.0です。
マスカット本体の「maskatFW」を、解凍した「maskat」フォルダの配下に置いてください。
※マスカット本体はサイトよりダウンロードしてください。
●フレームワーク概要
このフレームワークは
-イベントファイルの情報を元に、Modelを特定し、そのModelをCallする機能。
-リクエストXMLの解析
-レスポンスXML生成の補助
-Modelクラスのテンプレート生成
を提供します。
●サーブレット
このフレームワークはひとつのServletからすべてのModelを呼び出だすよう構成されます。
Struts同様、web.xmlへのServletの定義は1つだけです。
●イベントファイル
イベントファイルにはmaskat単体には無い決まりがあります。
-パッケージの指定
<header name="maskat_layoutID" value="org.maskat.demo.add"/>
headerタグname="maskat_layoutID"のvalueにModelのパッケージ名を指定します。
-サーブレットの指定
remoteUrlはすべてMaskatActionServletを指定します。
-resultタグの指定
rootNameは"maskat"固定です。
●MaskatTemplateGenerator
Modelのテンプレートを自動生成します。
srcフォルダ直下のmaskat.propertyを元に自動生成を行います。
設定内容は以下の4種類です。
generate.src.path => 自動生成するファイルの書き込み先。通常はWEB-INF/src/を指定します。
generate.xml.path => 自動生成するイベントXMLファイルのありか。contentsを指定すれば、contents以下のイベントXMLファイルすべてが自動生成の対象となります。
generate.code.chageline => 自動生成するファイルの改行コード
generate.code.charset => 自動生成するファイルの文字コード
org.maskat.core.gen.MaskatTemplateGenerator
を実行すれば、generate.src.pathで指定したフォルダにModelクラスのテンプレートが作成されます。
指定のイベントXMLファイルのみ処理を行いたい場合は、
org.maskat.core.gen.MaskatTemplateGenerator <イベントXMLファイルパス>...
と処理対象のイベントXMLを実行引数で渡してください。
生成されるクラスは以下の設定により作成されます。
先述したパッケージ名 => このXMLのModelクラスすべてのパッケージ
componetタグのid => クラス名
eventタグのid => メソッド名
----------add_e.xml-------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE eventDef SYSTEM "eventDef.dtd">
<eventDef>
<header name="maskat_layoutID" value="org.maskat.demo.add"/>
<component id="local_equal">
<event id="onclick" finish="add" type="local"/>
</component>
<component id="RemoteEqual">
<event id="onclick" start="validate" type="remote" async="false" remoteUrl="../../MaskatActionServlet">
<param rootNode="addParam">
<source obj="remote_arg1" node="arg1" type="byte" desc="パラメータ1"/>
<source obj="remote_arg2" node="arg2" type="byte" desc="パラメータ2"/>
</param>
<result rootNode="maskat">
<target out="remote_ans" in="result"/>
</result>
</event>
</component>
</eventDef>
--------------------------------------------------------
上記XMLの場合
onclickメソッドがひとつの
org.maskat.demo.add.RemoteEqual.javaが自動生成されます。
※local_equalは処理がlocalなので自動生成されません。
また、すでに同名のクラスが存在する場合は生成がスキップされます。
再度自動生成する場合は、クラスを削除してから再度実行してください。
●Model
Modelクラスの各メソッドはMaskatRequestクラスとMaskatResponseBuilderクラスの2つの引数が引き渡されます。
MaskatRequestはリクエストXMLを解析し、階層状に収めたクラスです。
MaskatResponseBuilderはレスポンスXML作成を補助するクラスです。
MaskatRequest及びMaskatResponseBuilderについては同梱のJavadocを参照ください。
●更新履歴
2007/01/25
-MaskatTemplateGeneratorリファクタリング
クラスがすでに存在する場合スキップするよう修正
DomParserがDTDが無いと落ちるため、DTD定義を無視するよう修正
-ドキュメントの充実
-javadocを生成
-demo_JavaEEにtable.htmlを追加
=>tableから複数行送信した場合の処理
-ソースの文字コードをUTF-8(LF BOMなし)に統一
2007/01/22
maskat-JavaEE-support_1.4.0_20070122リリース
-MaskatResponseBuilder周りの大幅な見直し
-MaskatTemplateGeneratorの追加
2007/01/12
初版作成
---
maskat-JavaEE-support_1.4.0_20070125
作者:齋藤敏行
作者のホームページ:http://blog.pluswing.net/
| 
|