2017-01-17 4 views
2

Ich brauche Hilfe mitHibernate kann nicht auspacken Schnittstelle

javax.persistence.PersistenceException: Hibernate cannot unwrap interface java.sql.Connection 

Ich brauche die Verbindung auszupacken. Es ist eine Migration von Glassfish zu JBoss eap 7. Ich verstehe nicht, wo das Problem liegt. Akzeptiert JBoss das nicht? Gibt es eine andere Möglichkeit, das Auspacken durchzuführen?

Ich lese viel über das Auspacken der Verbindung mit Session, aber meine IDE sagt Session nicht gefunden.

Ich arbeite mit JBoss eap 7 und Hibernate 2.1.

+0

Willkommen Überlauf Stack! Zeigen Sie Code, um zu sehen, was Sie bisher versucht haben. –

Antwort

2

Jboss EAP7 unterstützt Hibernate 5.x, nicht Hibernate 2.x. Verwenden Sie die Hibernate-Version, die mit der spezifischen JBoss EAP-Version geliefert wird.

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 
    } 
}); 

siehe hier: http://wiki.eclipse.org/EclipseLink/Examples/JPA/EMAPI#Getting_a_JDBC_Connection_from_an_EntityManager