Domanda

Ho diversi componenti che sono applicazioni ambito. A seconda di quale ambiente mi trovo, voglio installare uno o l'altro. In JBoss Seam, vorrei utilizzare @Install (false), quindi configurare il fagiolo che volevo tramite components.xml.

Esiste un metodo simile per fare questo in CDI / WELD?

Grazie,

Walter

È stato utile?

Soluzione

Bene, si può sempre usare un metodo produttore e decidere quale applicazione di istanziare sulla base di alcune configurazioni del tuo. Ricordate che nel CDI la quantità di XML è messo al minimo.

Quindi, qualcosa di simile:

@Produces
public Component createComponent() {
   if (configuration.isSomething()) {
       return new ComponentImpl1();
   } else {
       return new ComponentImpl2();
   }
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top