Olá, durante o curso percebi que a injeção dos objetos EJB estão sendo injetados através da anotação @Inject que é do CDI. Sabendo que os beans são EJB porque não injetar como @EJB ? Seria incorreto injetar com @EJB ?
Olá, durante o curso percebi que a injeção dos objetos EJB estão sendo injetados através da anotação @Inject que é do CDI. Sabendo que os beans são EJB porque não injetar como @EJB ? Seria incorreto injetar com @EJB ?
Oi Lucas,
Quando inventaram @EJB
nao existia ainda o CDI. Nessa época pensaram que seria boa prática usar para cada tipo de objeto uma anotação de injeção separada, como @EJB
ou @Resource ou @ManagedProperty
.
Com o nascimento do CDI todo mundo usa apenas uma anotação e uma forma de injeção, mas @EJB
continua funcionando.
abs
@EJB só permite injetar de EJB para EJB. O @Inject é universal.
Se injetar meus session beans como @Inject é possível ter uma aplicação modularizada ? Ex: Fazer deploy de Jar EJB separados como serviços ?
Oi Lucas,
pelo que sei o Wildfly tem problemas com isso e o CDI joga uma exceção.
abs