有人知道JBoss @Service EJB是否支持交易?我想使用EntityManager,但我得到“必须在事务中使用EntityManager”错误。在EJB上明确指定容器管理的事务和REQUIRED事务没有什么区别。
感谢。
更新
以下是我用来获取EntityManager的代码:
@PersistenceContext(unitName = "MyPersistenceContextName")
private EntityManager m_entityManager;
以下是失败的代码:
m_entityManager.persist( objectToSave);
m_entityManager.flush();
第一行失败了。
答案 0 :(得分:1)
通过应用注释@Service
,它将在具有特定名称的MBean
服务器中安装bean,该服务器在不同的类加载器上运行。你在另一个申请。因此,这可能是MBean不支持交易的原因。无法访问上下文。
您可以将其委托给其他可以通过JNDI查找访问的EJB bean,而不是通过MBean与数据库交互。