Domanda

JSR-299 (CDI) introduce il concetto (purtroppo di nome) di una risorsa: http://docs.jboss.org/weld/reference/1.0.0/en-US/html/resources.html#d0e4373

Si può pensare a una risorsa in tale nomenclatura come un ponte tra il Java EE 6 marca di iniezione di dipendenza (@EJB, @Resource, @PersistenceContext e simili) e la marca di CDI di iniezione di dipendenza.

Il succo generale sembra essere che da qualche parte (e questo sarà la radice della mia domanda) si dichiara ciò che equivale a una classe ponte: contiene i campi annotati entrambi con @EJB di Java EE o annotazioni @PersistenceContext o @Resource e con @Produces annotazioni di CDI. L'effetto netto è che Java EE 6 inietta un contesto di persistenza, per esempio, dove è richiesto, e CDI riconosce che iniettato PersistenceContext come fonte per iniezioni futuri lungo la linea (gestita dal @Inject).

La mia domanda è: qual è il consenso della comunità - o c'è uno - on:

  • ciò che questa classe ponte dovrebbe essere denominato
  • in cui questa classe ponte dovrebbe vivere
  • se è meglio di localizzare tutta questa roba in una sola classe o fare molti di loro

...

A sinistra a me stesso, stavo pensando di dichiarare una sola classe chiamata CDIResources e usando come l'unico vero posto per collegare DI Java EE con DI del CDI. Molti esempi fare qualcosa di simile, ma io non sono chiare sul fatto che siano "solo" esempi o se questo è un buon modo per farlo.

Grazie.

È stato utile?

Soluzione

Questo sembra altamente soggettivo, ma I preferiscono fare diverse classi e I chiamata FooProducer una classe producendo un Foo.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top