Java 在使用我的web应用的EJB上获取观察者模式

Java 在使用我的web应用的EJB上获取观察者模式,java,jakarta-ee,annotations,ejb,observer-pattern,Java,Jakarta Ee,Annotations,Ejb,Observer Pattern,我正在尝试让EJB观察者模式正常工作,从下面的示例中可以看出这一点非常简单: 但是,当我实现该方法时: public void doLogging(@Observes String message){ System.out.println("Observed:"+message); } 无法插入@Observer注释导入 此外,如果我手动执行此操作,请执行以下操作: import javax.enterprise.event.Observes; 它不起作用,看起来我没有类/罐子 我

我正在尝试让EJB观察者模式正常工作,从下面的示例中可以看出这一点非常简单:

但是,当我实现该方法时:

public void doLogging(@Observes String message){
    System.out.println("Observed:"+message);
}
无法插入@Observer注释导入

此外,如果我手动执行此操作,请执行以下操作:

import javax.enterprise.event.Observes;
它不起作用,看起来我没有类/罐子

我正在使用EJB3.0,我希望这不仅仅出现在3.1中。 如果是这种情况,我如何在EJB3.0中获得观察者模式?

它不是的一部分,而是()

CDI是自JavaEE6以来新出现的,JavaEE6也涵盖了EJB3.1。由于您手头只有EJB3.0,这意味着您仍然使用JavaEE5。现在我们已经在JavaEE7上了。是时候升级了

JavaEE7服务器的例子有JBossWildfly 8.x、OracleGlassFish 4.x、ApacheTomee2.x和IBMWebSphere9.x。JavaEE6服务器的示例有JBossAS6.x/7.x、OracleGlassFish 3.x、ApacheTomee1.x和IBMWebSphere8.x

另见: