[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 メーリングリストの案内