0

我想在一个 bean 中做一些预定的 JDBC 工作。

我得到了。

Internal Exception: java.sql.SQLException: Error in allocating a connection.
Cause: java.lang.IllegalStateException: Local transaction already has 1 non-XA Resource:
cannot add more resources.
Error Code: 0
@LocalBean @Stateless
class MyBean {

    public void doJPA() {
    }

    @Schedule
    public void doJDBC() {
    }

    @PersistentContext
    EntityManager entityManager;

    @Resource
    DataSource dataSource;
}

我做错什么了吗?

我只需要把豆子分开吗?

谢谢你。

4

1 回答 1

1

如果您使用与 JPA 相同的 DataSource,则服务器应该为您提供相同的连接,因此您不应收到此错误。您是否使用不同的数据源?

您还可以使用 unwrap() 从 EntityManager 获取 JDBC 连接

见, http://wiki.eclipse.org/EclipseLink/Examples/JPA/EMAPI#Getting_a_JDBC_Connection_from_an_EntityManager

于 2012-05-30T14:39:02.013 回答