我需要帮助
javax.persistence.PersistenceException: Hibernate cannot unwrap interface java.sql.Connection
我需要解开连接。这是从glassfish到JBoss eap 7的迁移。我不明白问题出在哪里。 JBoss不接受这个吗?还有其他方法可以解开吗?
我阅读了很多关于解开与Session
的连接的内容,但我的IDE说Session
未找到。
我使用JBoss eap 7和hibernate 2.1。
答案 0 :(得分:4)
Jboss EAP7支持Hibernate 5.x,而不支持Hibernate 2.x.使用与特定JBoss EAP版本捆绑在一起的Hibernate版本。
entityManager.getTransaction().begin();
java.sql.Connection connection = entityManager.unwrap(java.sql.Connection.class);
...
entityManager.getTransaction().commit();
Session hibernateSession = entityManager.unwrap(Session.class);
hibernateSession.doWork(new org.hibernate.jdbc.Work() {
@Override
public void execute(Connection connection) throws SQLException {
// do whatever you need to do with the connection
}
});