3

EJB とその他の Java クラスのセットがあり、それらがデプロイされるシステム環境 (本番、テスト、またはラボ) に基づいて異なる構成が必要です。構成情報には、URL やデータベース接続情報などが含まれます。

各環境にまったく同じ製品 (EAR ファイル) をデプロイし、それがどこにあり、どのような構成が必要かをコードに認識させたいと考えています。各環境の各デプロイ サーバーに変更を加える必要はありません。 .

これらすべてのコンポーネントを一元化され、信頼性が高く、保守が容易な方法で構成する最善の方法は何ですか?

ご意見ありがとうございます。

4

3 に答える 3

2

最善の方法は、JNDI エントリを使用することです。

単純な var の代わりにこれらのエントリを使用するには、アプリケーションの一部を再コーディングする必要がある場合がありますが、このセットアップでは:

  • 構成はサーバーに依存しません。各ベンダーは独自の実装を提供しますが、仕様は標準です。
  • クラスター化された環境では、構成をクラスター全体の JNDI ツリーに永続化できます (JBoss を参照)。
  • サーバーを再起動せずに、webadmin を使用して構成を変更できます。
于 2008-11-21T23:00:06.400 に答える
0

データベース接続プール情報の保存方法と構成方法は、アプリ サーバー ベンダーによって異なります。クラスパスのプロパティファイルに他の変数を入れます。

于 2008-11-21T22:46:37.287 に答える
0

まったく同じ EAR を特定のコンテナーの 3 つの異なるインスタンスにデプロイする場合は、デプロイ設定を編集する必要があります。これは、デプロイ プロセスが 3 つのバージョンのどれを使用したいかを知る方法がないためです。特定の展開で。

上記で Piere-Yves が述べたように、デプロイ設定は JNDI エントリに入れる必要があります。

私があなただったら、展開先の環境に応じて、展開スクリプト (Ant?) に JNDI エントリを適切に設定させるでしょう。

于 2008-11-22T00:03:10.813 に答える