2010-11-29 3 views
3

WARファイルとしてデプロイされたJRubyアプリケーションで変数を設定するにはどうすればよいですか?操作グループは、アプリケーションの配置場所に応じて、データベース設定やその他の環境変数を設定する必要があります。これはWARファイルであるため、database.ymlや環境ファイルに直接アクセスすることはできません。Tomcatの設定でJRubyアプリケーションに変数を渡す

私は構成が必要なものを可変化し、Tomcat app.config/web.configに何かを入れさせたいと思っています。これは可能ですか?これらの値をJRubyにどのように持ち込むのですか?だから、JRubyの中Tomcatサーブレットコンテキストからパラメータを取得するための

答えて

5

は非常に簡単です私が発見した:

$servlet_context 

をだから、例えば私は、web.xmlファイルに次のように定義されていた場合:

# from inside the web.xml context 
<context-param> 
    <param-value>jdbc:h2:localhost/~/test_db</param-value> 
    <param-name>database.url</param-name> 
</context-param> 

次のようにJRubyの値にアクセスできます:

$servlet_context.getInitParameter("database.url") 

これは、文字列 " jdbc:h2:localhost /〜/ test_db "と入力します。

+0

ありがとうございます。私は別のエンジンに複数の戦争を展開しており、異なるフォーマットで conf///context.xml.default'に追加することができます:http://tomcat.apache.org/tomcat-6.0-doc/ config/context.html#Context_Parameters – Amala

関連する問題