Java Spring3JPA和Hibernate中的奇怪行为
嗨,朋友们 我在我的环境中遇到了这个异常。而且它不会在什么时候修复。我使用Spring3、JPA和Hibernate,我们使用服务器提供的EntityManager,事务也由服务器提供。但是引发此异常的方法没有使用@Transaction注释,也没有使用任何事务。请参见下面的异常Java Spring3JPA和Hibernate中的奇怪行为,java,hibernate,spring,jpa,Java,Hibernate,Spring,Jpa,嗨,朋友们 我在我的环境中遇到了这个异常。而且它不会在什么时候修复。我使用Spring3、JPA和Hibernate,我们使用服务器提供的EntityManager,事务也由服务器提供。但是引发此异常的方法没有使用@Transaction注释,也没有使用任何事务。请参见下面的异常 java.lang.NullPointerException 2011-04-27 13:10:56,141 ERROR [STDERR] at org.hibernate.cache.impl.bridge.Reg
java.lang.NullPointerException
2011-04-27 13:10:56,141 ERROR [STDERR] at org.hibernate.cache.impl.bridge.RegionFactoryCacheProviderBridge.nextTimestamp(RegionFactoryCacheProviderBridge.java:85)
2011-04-27 13:10:56,141 ERROR [STDERR] at org.hibernate.impl.SessionFactoryImpl.openSession(SessionFactoryImpl.java:573)
2011-04-27 13:10:56,141 ERROR [STDERR] at org.hibernate.ejb.EntityManagerImpl.getRawSession(EntityManagerImpl.java:87)
2011-04-27 13:10:56,141 ERROR [STDERR] at org.hibernate.ejb.EntityManagerImpl.getSession(EntityManagerImpl.java:67)
2011-04-27 13:10:56,141 ERROR [STDERR] at org.hibernate.ejb.AbstractEntityManagerImpl.joinTransaction(AbstractEntityManagerImpl.java:436)
2011-04-27 13:10:56,151 ERROR [STDERR] at org.hibernate.ejb.AbstractEntityManagerImpl.postInit(AbstractEntityManagerImpl.java:82)
2011-04-27 13:10:56,151 ERROR [STDERR] at org.hibernate.ejb.EntityManagerImpl.<init>(EntityManagerImpl.java:61)
2011-04-27 13:10:56,151 ERROR [STDERR] at org.hibernate.ejb.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:39)
2011-04-27 13:10:56,151 ERROR [STDERR] at org.hibernate.ejb.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:34)
2011-04-27 13:10:56,151 ERROR [STDERR] at org.jboss.jpa.injection.InjectedEntityManagerFactory.createEntityManager(InjectedEntityManagerFactory.java:82)
2011-04-27 13:10:56,177 ERROR [STDERR] at org.springframework.orm.jpa.SharedEntityManagerCreator$SharedEntityManagerInvocationHandler.invoke(SharedEntityManagerCreator.java:234)
弹簧配置
<context:annotation-config />
<context:component-scan base-package="my.package.name" />
<tx:annotation-driven transaction-manager="txManager"/>
<jee:jndi-lookup id="entityManagerFactory" jndi-name="persistence-units/myPU"/>
<bean
class="org.springframework.beans.factory.annotation.RequiredAnnotationBeanPostProcessor" />
<bean
class="org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor" />
<bean id="txManager" class="org.springframework.transaction.jta.JtaTransactionManager">
<property name="transactionManagerName" value="java:/TransactionManager"/>
<property name="userTransactionName" value="UserTransaction"/>
</bean>
请参阅更新后的persistence.xmlhmmm原始帖子。关于缓存什么都没有?是的,我们不使用任何缓存,但仍然会看到此异常。我不能按要求复制这个问题。同样的代码有时工作正常,但突然它开始抛出这个异常请至少显示您的Spring上下文指定持久性上下文的部分查看我刚刚更新的Spring配置的原始帖子查看更新后的persistence.xmlhmmm的原始帖子。关于缓存什么都没有?是的,我们不使用任何缓存,但仍然会看到此异常。我不能按要求复制这个问题。同样的代码有时工作正常,突然它开始抛出这个异常。请显示您的Spring上下文,至少是指定持久性上下文的部分。请参阅我刚刚更新的Spring配置的原始文章
<context:annotation-config />
<context:component-scan base-package="my.package.name" />
<tx:annotation-driven transaction-manager="txManager"/>
<jee:jndi-lookup id="entityManagerFactory" jndi-name="persistence-units/myPU"/>
<bean
class="org.springframework.beans.factory.annotation.RequiredAnnotationBeanPostProcessor" />
<bean
class="org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor" />
<bean id="txManager" class="org.springframework.transaction.jta.JtaTransactionManager">
<property name="transactionManagerName" value="java:/TransactionManager"/>
<property name="userTransactionName" value="UserTransaction"/>
</bean>