我想配置LocalContainerEntityManagerFactoryBean没有persisten.xml文件。未能确定休眠持久提供
这是我的数据源 - 它适用于Hibernate SessionFactory - 因此,它没问题。
<bean id="dataSource"
class="org.apache.commons.dbcp2.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/test"/>
<property name="username" value="root"/>
<property name="password" value="root"/>
</bean>
这是我LocalContainerEntityManagerFactoryBean
<bean id="myEmf" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="packagesToScan" value="application.models" />
<property name="jpaVendorAdapter">
<bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter" />
</property>
<property name="jpaProperties">
<props>
<prop key="hibernate.hbm2ddl.auto">create-drop</prop>
<prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
</props>
</property>
</bean>
例外的是我得到:
...Could not instantiate bean class [org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter]: Constructor threw exception; nested exception is java.lang.IllegalStateException: Failed to determine Hibernate PersistenceProvider
我阅读文档,我知道LocalContainerEntityManagerFactoryBean具有这样的属性,并创建类似风格LocalContainerEntityManagerFactoryBean适用于Spring in Action 3和这里:http://softwarecave.org/2014/03/15/using-jpa-and-jta-with-spring/
也许你有一个想法,我做错了什么,或者至少春天想通过这个异常告诉我吗?
在此先感谢, 干杯:)
PS是明确的,无法确定休眠PersistenceProvider类并不意味着春天期望的persistence.xml - 这好像应该是错误:从{类路径解析没有持久单元*:META-INF/persistence.xml中}
解决:
感谢JB Nizet - 你是否有类似的问题补充:
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>4.3.6.Final</version>
</dependency>
to pom.xml
您可能没有所需的有休眠jar包在你的类路径中。 Spring正在寻找类org.hibernate.jpa.HibernateEntityManagerFactory或类org.hibernate.ejb.HibernateEntityManagerFactory – 2014-10-04 11:22:48
是的,这是它,谢谢你 - 但是,为什么春天不会扔我这样的:“没有找到类“?这是非常有欺骗性的,如果它被报告为问题? – bkowalczyyk 2014-10-04 11:37:33
随时可以举报。更清晰的错误信息不会伤害任何人。 – 2014-10-04 11:39:40