2013-12-19 109 views
2

我創建了一些EJB,它們使用@Stateless註釋。要在其他EJB中使用這些EJB,我目前使用@EJB註釋。我爲我的REST Web服務(我正在使用JAX-RS)創建了另一個層(通過服務層),並且我想知道是否應該使用@EJB@Inject。我知道這兩個是不同的東西 - 他們可能住在不同的容器中?如果我使用@Inject,是否可以得到與@EJB相同的EJB。還是從CDI容器中獲得EJB?在我的REST Web服務的服務層中使用@EJB或@Inject注入EJB?

我也猜測通過使用@Inject我沒有得到我從@EJB得到的所有EJB功能?

回答

1

@Inject支持注入EJB。沒有功能差異,CDI正在使用標準的JNDI位置查找對象。該@EJB標註有一些附加的功能,主要是圍繞遠程或不會被@Inject