2012-05-08 116 views
3

我有這個代碼EJB:依賴注入無接口

@Local 
interface IRepo 
{ //... 
} 

@Stateless 
class Repo implements IRepo 
{ // .. 
} 

class WebS 
{ 
@EJB private IRepo repo; 
// ... 
} 

和所有工作正常。

但現在我刪除接口IRepo,使

@Stateless 
class Repo  { // .. 
} 

class WebS 
{ 
@EJB private Repo repo; 
// ... 
} 

和JNDI查找失敗。

could not resolve global JNDI name for @EJB for container WebS ... 

我可以使無依賴注入嗎?

+0

地圖@LocalBean – Anton

回答

5

您應該使用

@Stateless 
@LocalBean // <-- annotation here 
class Repo  { 
} 

class WebS 
{ 
@EJB private Repo repo; 
// ... 
} 

確保你使用EJB-3.1兼容的應用服務器

+1

您的回購類這是真的,但我使用3.0。在3.0界面被請求 – Ilya

+0

然後有什麼問題? – Saraph