4
respostas

Porque usamos @Inject ao invés de @EJB no curso ?

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 ?

4 respostas

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