2015-04-15 60 views
0

這是可能的嗎? 我想這樣做:@EJB(beanName =「myBean」)的構造函數注入

@EJB(beanName = "MyStratImpl") 
public DateTimeReadImpl(MyStrategy<MyBean> myStrategy) { 
    this.strategy = myStrategy; 
} 

我有一個無參數的構造函數,我想用而不是做字段注入構造器注入:

@EJB(beanName = "MyStratImpl") 
private MyStrategy<MyBean> myStrategy strategy; 

如何使用EJB引用作爲構造參數?

(我可以使用setter注入,或反射注入,但我寧願不要)

回答

2

我不認爲EJB支持構造器注入,但可以使用CDI

@Inject 
public DateTimeReadImpl(MyStrategy<MyBean> myStrategy) { 
    this.strategy = myStrategy; 
} 

您需要登錄enable CDI才能正常工作。另外,如果您有多個實施MyStrategy<MyBean>的bean,則可以使用qualifiers