Align HibernateJpaVendorAdapter with Hibernate ORM 6.2
Includes documentation and test revisions. Closes gh-30288
This commit is contained in:
@@ -49,32 +49,19 @@ public class HibernateEntityManagerFactoryIntegrationTests extends AbstractConta
|
||||
@Test
|
||||
public void testCanCastNativeEntityManagerFactoryToHibernateEntityManagerFactoryImpl() {
|
||||
EntityManagerFactoryInfo emfi = (EntityManagerFactoryInfo) entityManagerFactory;
|
||||
boolean condition1 = emfi.getNativeEntityManagerFactory() instanceof org.hibernate.jpa.HibernateEntityManagerFactory;
|
||||
assertThat(condition1).isTrue();
|
||||
// as of Hibernate 5.2
|
||||
boolean condition = emfi.getNativeEntityManagerFactory() instanceof SessionFactory;
|
||||
assertThat(condition).isTrue();
|
||||
assertThat(emfi.getNativeEntityManagerFactory() instanceof SessionFactory).isTrue();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testCanCastSharedEntityManagerProxyToHibernateEntityManager() {
|
||||
boolean condition1 = sharedEntityManager instanceof org.hibernate.jpa.HibernateEntityManager;
|
||||
assertThat(condition1).isTrue();
|
||||
// as of Hibernate 5.2
|
||||
boolean condition = ((EntityManagerProxy) sharedEntityManager).getTargetEntityManager() instanceof Session;
|
||||
assertThat(condition).isTrue();
|
||||
assertThat(((EntityManagerProxy) sharedEntityManager).getTargetEntityManager() instanceof Session).isTrue();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testCanUnwrapAopProxy() {
|
||||
EntityManager em = entityManagerFactory.createEntityManager();
|
||||
EntityManager proxy = ProxyFactory.getProxy(EntityManager.class, new SingletonTargetSource(em));
|
||||
boolean condition = em instanceof org.hibernate.jpa.HibernateEntityManager;
|
||||
assertThat(condition).isTrue();
|
||||
boolean condition1 = proxy instanceof org.hibernate.jpa.HibernateEntityManager;
|
||||
assertThat(condition1).isFalse();
|
||||
assertThat(proxy.unwrap(org.hibernate.jpa.HibernateEntityManager.class)).isNotNull();
|
||||
assertThat(proxy.unwrap(org.hibernate.jpa.HibernateEntityManager.class)).isSameAs(em);
|
||||
assertThat(proxy.unwrap(Session.class)).isSameAs(em);
|
||||
assertThat(proxy.getDelegate()).isSameAs(em.getDelegate());
|
||||
}
|
||||
|
||||
|
||||
@@ -30,6 +30,7 @@ import jakarta.persistence.PersistenceContext;
|
||||
import jakarta.persistence.PersistenceContextType;
|
||||
import jakarta.persistence.PersistenceProperty;
|
||||
import jakarta.persistence.PersistenceUnit;
|
||||
import org.hibernate.Session;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import org.springframework.beans.factory.FactoryBean;
|
||||
@@ -700,8 +701,7 @@ public class PersistenceInjectionTests extends AbstractEntityManagerFactoryBeanT
|
||||
public static class DefaultVendorSpecificPrivatePersistenceContextField {
|
||||
|
||||
@PersistenceContext
|
||||
@SuppressWarnings("deprecation")
|
||||
private org.hibernate.ejb.HibernateEntityManager em;
|
||||
private Session em;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -28,9 +28,7 @@
|
||||
<property name="entityManagerFactory" ref="entityManagerFactory"/>
|
||||
</bean>
|
||||
|
||||
<bean id="sessionFactory" factory-bean="entityManagerFactory" factory-method="getSessionFactory"/>
|
||||
|
||||
<bean id="hibernateStatistics" factory-bean="sessionFactory" factory-method="getStatistics"/>
|
||||
<bean id="hibernateStatistics" factory-bean="entityManagerFactory" factory-method="getStatistics"/>
|
||||
|
||||
<bean class="org.springframework.aop.framework.autoproxy.DefaultAdvisorAutoProxyCreator"/>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user