実行時に JNDI から N 個のキー (文字列) を読み取ることができる必要がある Web アプリケーションがあります。
Context ctx = new InitialContext();
String[] values = (String[])ctx.lookup("KEYS");
for(String value : values) {
// Do something with the key's value...
}
Context/Parameter
これは Tomcat で実行されるため、次のようにこれらのキーを要素として内部に格納できる必要がありますcontext.xml
。
<Context>
<Parameter name="key1" value="value1" override="false" />
<Parameter name="key2" value="value2" override="false" />
<Parameter name="key3" value="value3" override="false" />
...etc.
</Context>
問題は、このアプリケーションをデプロイする環境 (DEV、QA、DEMO、LIVE など) ごとに異なる数のキーがあることです。たとえば、DEV には 1 つのキー (つまり、1 つのContext/Parameter
要素) しかない場合があります。LIVE は 20 あるかもしれません。
Java コードでこれに対応するにはどうすればよいですか? コードは環境間で変更できないため、同じ Java コードを使用して JNDI 経由で任意の数のキーをロードする方法が必要Context/Parameters
ですcontext.xml
。何か案は?前もって感謝します!