我想配置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