1

我正在尝试通过一个 slsb 访问两个数据库,特别是 slsb 中的一种方法。然而这不可能吗?除了更改存储的过程之外,我还能做些什么吗?

@PersistenceContext(unitName = "DB1")
private EntityManager oneEntityManager;

@PersistenceContext(unitName = "DB2")
private EntityManager twoEntityManager;

...


    StringBuilder queryString1 = new StringBuilder("exec myProc1 ");
    Query queryOne = oneEntityManager.createNativeQuery(queryString.toString());
    List<?> resultListOne = query.getResultList();

    StringBuilder queryString2 = new StringBuilder("exec myProc2 ");
    Query queryTwo = twoEntityManager.createNativeQuery(queryString2.toString());
    List<?> resultListTwo = queryTwo.getResultList();

...

原因:org.hibernate.exception.GenericJDBCException:无法打开连接

4

1 回答 1

1

我正在尝试通过一个 slsb 访问两个数据库,特别是 slsb 中的一种方法。然而这不可能吗?

这绝对是可能的,但它确实有助于提供更多细节:

  • 你在访问不同的数据库吗?
  • 你能显示你的持久性单元的配置吗?
  • 你能告诉我们你是如何配置你的数据源(XA?)
  • 你能展示你如何注释你的 SLSB 的方法吗?

原因:org.hibernate.exception.GenericJDBCException:无法打开连接

这表明您的一个持久性单元存在配置问题,但无法多说。

于 2010-07-06T16:23:00.813 回答