EJB:没有接口的依赖注入

时间:2012-05-08 12:49:29

标签: java dependency-injection 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 ...   

我可以在没有接口的情况下进行依赖注入吗?

1 个答案:

答案 0 :(得分:5)

你应该使用

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

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

确保使用符合EJB-3.1的应用程序服务器