做@Service JBoss EJB的支持事务吗?

时间:2012-01-20 21:37:40

标签: java-ee jboss ejb ejb-3.0 jta

有人知道JBoss @Service EJB是否支持交易?我想使用EntityManager,但我得到“必须在事务中使用EntityManager”错误。在EJB上明确指定容器管理的事务和REQUIRED事务没有什么区别。

感谢。

更新

以下是我用来获取EntityManager的代码:

   @PersistenceContext(unitName = "MyPersistenceContextName")
   private EntityManager m_entityManager;

以下是失败的代码:

  m_entityManager.persist( objectToSave);
  m_entityManager.flush();

第一行失败了。

1 个答案:

答案 0 :(得分:1)

通过应用注释@Service,它将在具有特定名称的MBean服务器中安装bean,该服务器在不同的类加载器上运行。你在另一个申请。因此,这可能是MBean不支持交易的原因。无法访问上下文。

您可以将其委托给其他可以通过JNDI查找访问的EJB bean,而不是通过MBean与数据库交互。