[mayaa-user:23] Re: パス管理といえば
加藤
kamesuke-hogetaro @ gluegent.com
2005年 11月 26日 (土) 12:43:33 JST
須賀さん、こんにちわ。
システムプロパティなどで良いと思います。
Mayaからはシステムプロパティから引き出して設定が
できる方法だけあれば良いかと思います。
例えば、私はj2ee.diconなどには、以下のように書いて使っています。
<component name="xaDataSource"
class="org.seasar.extension.dbcp.impl.XADataSourceImpl">
<property name="driverClassName">@java.lang.System @ getProperty("app1.jdbc.driver")</property>
<property name="URL">@java.lang.System @ getProperty("app1.jdbc.url")</property>
<property name="user">@java.lang.System @ getProperty("app1.jdbc.uid")</property>
<property name="password">@java.lang.System @ getProperty("app1.jdbc.pwd")</property>
</component>
こうすることで、開発環境と本番環境で渡すjavaの起動パラメータを
変えるだけでいけます。java環境変数を設定変更できるというのは、
権限を持ったユーザーにしか操作できないことになるのでセキュリティ的にも
堅いと思います。
MayaはognlではなくRhinoですが、同じように java.lang.System.getProperty("") で
記述できますよね。それでよいかと思います。
例えば、mayaaエレメントに template-absolute-root という属性を持たせて、
今回の機能を実現した前提とすれば…
<m:mayaa xmlns:m="http://mayaa.seasar.org" m:noCache="true"
m:template-absolute-root="/home/app1/htdocs">
↓
<m:mayaa xmlns:m="http://mayaa.seasar.org" m:noCache="true"
m:template-absolute-root="${java.lang.System.getProperty('app1.template-path')}">
と書ければ良いと思います。
開発環境と本番環境の差異をMayaaが面倒を見るというところ
まではせずに、あくまでもユーザーの使い方次第とし、Mayaaは
使われ方を規定しないというスタンスだけで良いかと思います。
ただ、上記のような設定を、全ての .mayaa に書くのかなると、
きついので、どこか1つでまとめられないかとも思います。
たしか、Mayaaは中心となる定義ファイルを書くことができましたよね?
テンプレートのsuffixの設定をlocaleなどで切り替える定義などを書く、
コンフィギュレーションファイルってありましたよね?
確か聞いた記憶があったのですが見つけられませんでした。すみません。
そこで1回定義したら全部に適用されれば良いかなと思います。
--------------------------------------------------------->>
Gluegent,Inc. T.Kato
http://package.gluegent.com/~kato/signature.xml
---->> generate products and services with high added value
> suga です。
>
> 05/11/25 に suga<ko.suga @ gmail.com> さんは書きました:
> > というわけで、これに関しての問題点は
> > 「コンテキストルートの外を見られるようにするか」
> > という点ですね。
>
> 設定次第でコンテキストルートの外を見られるようにしたいと思います。
>
> ただ、その指定をどうするのが良いか、考えがまとまりません。
> 良いアイデアがあれば教えてください。
>
> 絶対パス指定にしても、相対パス指定にしても、Java の外になるため
> 「開発環境と本番環境でパスが違う」
> ということになってしまいがちだと思うのです。
>
> どういう指定方法だと使いやすいでしょうか。
>
> --
> suga ( ko.suga @ gmail.com )
> _______________________________________________
> mayaa-user mailing list
> mayaa-user @ ml.seasar.org
> https://www.seasar.org/mailman/listinfo/mayaa-user
>
mayaa-user メーリングリストの案内