Java EE EJB 3.0 注释

标签 java jakarta-ee glassfish ejb

我正在开发 Glassfish 版本 3,当我尝试编译应用程序时,此错误日志出现在日志文件中,

SEVERE: The annotation symbol defined in super-class is not compatible with Session ejb ManagerDaoImpl

注释是@Singleton@Stateless

有什么办法可以解决这个问题吗?

最佳答案

带有@Singleton注解的bean适用于Java VM的一个实例,带有@Stateless的bean则适用于Java VM的多个实例。

如果你有公共(public)方法,你可以定义一个基类,如下所示:

public abstract class AbstractBean {
    public void commonMethod() {
        // do common operation
    }
}

public interface LocalFoo {
    public void foo();
}

public interface RemoteFoo {
    public void foo();
}

@LocalBean
@Local(LocalFoo.class)
@Remote(RemoteFoo.class)
@Stateless
public class FooBean extends AbstractBean implements LocalFoo, RemoteFoo {
    @Override
    public void foo() {
        // do something
    }
}  

关于Java EE EJB 3.0 注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18047317/

相关文章:

java - 将 json 对象中的日期发送到 Restful ws

tomcat - Geoserver,有多少并发用户

java - 帮我选择Java Web框架

java - 如果我将它配置为在缺少 web.xml 时不失败,为什么 maven-war-plugin 会因 web.xml 丢失而失败?

jakarta-ee - 使用共享库与完全封装的 EAR 的优缺点

java.lang.ClassNotFoundException : javax. 邮件.MessagingException

java - GWT 平台独立换行符

java - greendao:插入时出现 NullPointerException

eclipse - 无法在 Eclipse Photon/Eclipse IDE 中安装 Glassfish 工具

java - 使用自签名证书在 Web 服务上使用 WSIT 安全性 (Glassfish)