Jan*_*Jan 1 unit-testing hibernate jpa
使用Hibernate EntityManager 3.5.3-Final和Unitils 3.1会导致:
unitilsAfterTestTearDown(com.unifiedpost.payments.model.TestAccount) Time elapsed: 0.02 sec <<< FAILURE!
java.lang.AbstractMethodError: org.springframework.orm.jpa.persistenceunit.SpringPersistenceUnitInfo.getValidationMode()Ljavax/persistence/ValidationMode;
at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:621)
at org.unitils.orm.jpa.util.provider.hibernate.UnitilsHibernatePersistenceProvider.createContainerEntityManagerFactory(UnitilsHibernatePersistenceProvider.java:47)
at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:227)
at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:281)
at org.unitils.orm.jpa.util.JpaEntityManagerFactoryLoader.createEntityManagerFactoryBean(JpaEntityManagerFactoryLoader.java:77)
Run Code Online (Sandbox Code Playgroud)
这也在以下网站报道:http: //jira.unitils.org/browse/UNI-201
原因是unitils-orm依赖于Spring的2.5.x版本,但尚未准备好JPA2版本.
[INFO] +- org.unitils:unitils-testng:jar:3.1:test
[INFO] +- org.unitils:unitils-orm:jar:3.1:test
[INFO] | +- org.unitils:unitils-spring:jar:3.1:test
[INFO] | | +- org.springframework:spring-core:jar:2.5.2:test
[INFO] | | +- org.springframework:spring-beans:jar:2.5.2:test
[INFO] | | +- org.springframework:spring-test:jar:2.5.2:test
[INFO] | | \- org.springframework:spring-tx:jar:2.5.2:test
Run Code Online (Sandbox Code Playgroud)
也可以看看:
您有2个解决方法选项:
(1)补丁单位:
Run Code Online (Sandbox Code Playgroud)<properties> <spring.version>3.0.3.RELEASE</spring.version> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties>
(2)包含修补的MutablePersistenceUnitInfo
Run Code Online (Sandbox Code Playgroud)@Override public String getPersistenceXMLSchemaVersion() { return "1.0"; } @Override public SharedCacheMode getSharedCacheMode() { return SharedCacheMode.NONE; } @Override public ValidationMode getValidationMode() { return ValidationMode.NONE; }
[回复自己以供日后参考]
| 归档时间: |
|
| 查看次数: |
2691 次 |
| 最近记录: |