2012-05-08 119 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