【问题标题】:Two db connections using ejb, java persistence entitymanager使用ejb、java持久化entitymanager的两个db连接
【发布时间】:2010-07-05 14:05:56
【问题描述】:

我正在尝试通过一个 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:无法打开连接

【问题讨论】:

  • 那么“起因”部分在说什么?
  • java : 无状态会话 bean
  • javax.persistence.PersistenceException: org.hibernate.exception.GenericJDBCException: 无法打开连接 org.hibernate.ejb.AbstractEntityManagerImpl.throwPersistenceException(AbstractEntityManagerImpl.java:629)
  • 整个堆栈跟踪粘贴到您的问题中。

标签: java jpa ejb-3.0 entitymanager


【解决方案1】:

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

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

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

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

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

【讨论】:

    猜你喜欢
    • 2014-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-17
    • 2014-01-12
    • 2011-03-24
    • 2016-10-04
    相关资源
    最近更新 更多