1

アプリケーション スコープのコンポーネントがいくつかあります。現在の環境に応じて、どちらか一方をインストールしたいと考えています。JBoss Seam では、@Install(false) を使用してから、必要な Bean を components.xml で構成します。

CDI / WELDでこれを行うための同様の方法はありますか?

ありがとう、

ウォルター

4

1 に答える 1

1

いつでもプロデューサー メソッドを使用して、構成に基づいてインスタンス化する実装を決定できます。CDI では、xml の量が最小限に抑えられていることに注意してください。

したがって、次のようなものです:

@Produces
public Component createComponent() {
   if (configuration.isSomething()) {
       return new ComponentImpl1();
   } else {
       return new ComponentImpl2();
   }
}
于 2010-06-24T13:16:19.033 に答える