2013-06-24 67 views
2

我有一個實體: -實體中的CDI事件注入爲空,爲什麼?

@Entity 
@Table 
public class Application{ 

@Inject 
@QualifierName 
private Event<Application> applicationXXX; 

public void someMethod(){ 
applicationXXX.fire(someObject); 
} 
//BODY 
} 

在一個MyEventHandler類,我使用的是:

public void onXXX(@Observes @QualifierName Object someObject){ 

} 

注射在應用程序類的事件--- applicationXXX爲空。

但是,如果我在其他類中做同樣的注射,那麼 它不是空的和工作。

任何人都可以幫助我,並指出我在這裏失去了什麼?

我不能在實體中注入CDI事件?或者是否有其他方法?

感謝

回答

4

JPA實體是特殊的,因爲他們已經在管理從JPA你需要對他們生產,即使這樣,我真懷疑注射,仍能正常工作。我建議不要在JPA實體中使用CDI概念。

對於這種情況,我會打電話給其他中間人類來處理事件觸發。

相關問題