Причина в том, что unitils-orm зависит от версии 2.5.x Spring, которая еще не готова к 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
Смотри также:
У вас есть 2 варианта обхода проблемы:
(1) Патчи Unitils:
<properties>
<spring.version>3.0.3.RELEASE</spring.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
(2) Включить исправленную MutablePersistenceUnitInfo
- Duplicate Spring MutablePersistenceUnitInfo в вашем проекте (и убедитесь, что он предшествует устаревшей версии Spring в classpath)
- Добавьте недостающие методы к нему.
@Override
public String getPersistenceXMLSchemaVersion() {
return "1.0";
}
@Override
public SharedCacheMode getSharedCacheMode() {
return SharedCacheMode.NONE;
}
@Override
public ValidationMode getValidationMode() {
return ValidationMode.NONE;
}
[Ответил сам для дальнейшего использования]