1

GlassfishサーバーにデプロイされたJavaEEアプリケーションにいくつかの読み取り専用パラメーター(RMIレジストリホストやポートなど)を設定したいと思います。これを行う通常の場所はデプロイメント記述子ですが、私の問題は、それがEARにパッケージ化されているため、EARを変更せずに編集できないことです。

JDBCおよびJMSリソースの設定に似たものが必要ですが、はるかに簡単です。構成データをデータベーステーブルに入れることはできますが、それはやり過ぎのようです。ファイルリソースアダプタを使用することもできますが、Glassfish管理コンソールで設定を編集できれば最適です。

これを行うための標準的な方法はありますか?アプリケーションが通信する必要のある外部ノードに依存している場合、アプリケーションをどのようにテストしますか?これらのパラメータはどこに配置すればよいですか?また、どのようにアクセスできますか?

私の最善の推測は、外部JNDIリソースを定義することでしたが、データはどこに置くのでしょうか。

更新:これは私が考えていたものです:

Java EE構成パラメーターをEARまたはWARの外部に保管するにはどうすればよいですか?

だから問題は:Glassfishでこれをどのように行うのですか?

4

1 に答える 1

3

数時間グーグルした後、私は答えを見つけました!些細なことではありませんが、幸いなことに非常に簡単です。ここにあります:

http://www.mentby.com/glassfish/custom-resource-work-when-looking-it-up-but-not-with-injection.html

管理コンソールでカスタムリソースを作成し、「value」というプロパティを追加します。このような:

代替テキストhttp://img231.imageshack.us/img231/8237/jndicustomresource.png

次に、EJBからこの名前/値にアクセスするのは本当に簡単です。

try {
     InitialContext ic = new InitialContext();
     String value = (String) ic.lookup("MyCustomResource");
     System.out.println("MyCustomResource = " + value);
} catch (NamingException e) {
     e.printStackTrace();
}

どのプリント

情報:MyCustomResource = MyCustomResourceからの大きな抱擁!

于 2010-07-16T08:18:52.807 に答える