[mayaa-dev:10] Re: Webコンテナ外での動作
加藤太朗
t_kato @ gluegent.com
2006年 9月 29日 (金) 11:18:13 JST
加藤です。
> Webコンテナ外で動作するようにするということは、パスの自動調整も
> コンテキストルートからのフルパスだけでは問題があるでしょう。
ですね。
> あとは Web コンテナ外で動作させる場合のブートストラップをどうするか、
> というところでしょうか。
> http サーバ+Mayaa のパッケージを作っても面白いかもしれません。
純粋に独立したテンプレートエンジンAPIとしてのMayaaというイメージで
考えています。ブートストラップはユーザーが作る感じです。
たとえばVelocityに限りなく近い操作感のものといった具合です。
J2EEに縛られないライブラリにすることで、Mayaa採用の口が
広がるのではないかと思っています。
Pageに積むAttrScopeスタックもツールライブラリとして使う場合は、
いくつかが限定される感じでしょうか。
Webビュー層フレームワークとしてのMayaa:
PageScope - RequestScope - SessionScope - AppScope
ツールライブラリとしてのMayaa:
PageScope - ParameterizedScope - AppScope
↑Velocityで ↑ServletContextではない
いうところの ユーザー定義のもの
Context
たとえばコンソールプログラムでパラメータ(SystemID)と、
propertiesファイル(バインドしたい何らかのMap)などを渡せば、
結果を出力するというだけのものも簡単に作れるAPIを提供するという
イメージです。
「HTMLやXMLをアウトプットイメージにしているけど、仕方なく
Velocityを使っているOSS製品」は、軒並みMayaaに転向する
…なんてことになったら最高だなーというのが思い立ったきっかけです。
ま、実現にはけっこう骨が折れそうですが。
--------------------------------------------------------->>
Gluegent,Inc. T.Kato
http://package.gluegent.com/~kato/signature.xml
---->> generate products and services with high added value
> suga です。
>
> 加藤さんの [mayaa-dev:8] のコード、コミットされていますね。
> ありがとうございます。
> (まだ見ていませんけど)
>
> Webコンテナ外で動作するようにするということは、パスの自動調整も
> コンテキストルートからのフルパスだけでは問題があるでしょう。
>
> というわけで、コンテキストルートからのパスをファイル相対のパスに
> 置き換えるメソッドを作りました。
>
> StringUtil.adjustContextRelativePath(hostPage, path)
> hostPage, path ともに "/" から始まるパスを渡し、hostPage から path
> へリンクする場合の相対パスを返します。
>
> これを動的生成ページに埋め込むには、PathAdjuster の中でスクリプトを
> 生成して返すようにするしかないだろうと思っています。
> こんな感じの文字列を返すように PathAdjuster の実装を作る、と。
> ${ Packages.(略).StringUtil.adjustContextRelativePath(header.(略), 'パス') }
>
> あとは Web コンテナ外で動作させる場合のブートストラップをどうするか、
> というところでしょうか。
> http サーバ+Mayaa のパッケージを作っても面白いかもしれません。
>
> --
> suga ( ko.suga @ gmail.com )
> _______________________________________________
> mayaa-dev mailing list
> mayaa-dev @ ml.seasar.org
> https://www.seasar.org/mailman/listinfo/mayaa-dev
mayaa-dev メーリングリストの案内