我正在使用EJB 3和JBoss AS 6.0.0.Final。我有一个带有注释@Stateless
和@WebService
的无状态会话bean。当我添加注释@Singleton
时,部署错误显示消息:
... name = ServiceBean,service = ejb3已经安装
如何避免部署错误?
答案 0 :(得分:4)
您可以在同一个bean中使用@WebService和@Stateless或@WebService和@Singleton,如果您希望将POJO公开为Web服务和EJB,则非常有意义。
在同一个bean中使用@Stateless和@Singleton没有多大意义。当您使用@Singleton时,您正在使用与@Stateless完全相同的所有EJB功能(事务管理,安全性等)创建EJB。唯一的区别是容器如何管理EJB生命周期: