Мы успешно внедрили Spring, hibernate + jpa в наше приложение с помощью Xa transcation.но мы пытаемся реализовать критерии в нашем приложении, мы сталкиваемся с одной ошибкой,
java.lang.NoSuchMethodError: javax.persistence.EntityManager.getCriteriaBuilder ()
Итак, не могли бы вы сказать, какие классы реализации используют в Hybernate для интерфейса javax.persistence.criteria.CriteriaBuilder?
перечислил несколько jar-файлов, которые мы используем,
hibernate 3.3, jpa 2.0
Spring-Orm 3.0.2
Зимуют-EntityManager
Обновление:
Я изменил мой hibernate-jar на (hibernate-core-3.6.0.CR2, hibernate-entitymanager-3.6.0.CR2 версии), но все еще происходит то же исключение,
CriteriaBuilder criteriaBuilder= this.getJpaTemplate().getEntityManagerFactory().getCriteriaBuilder();
В моем конфигурационном файле:
<beans:bean id="jpaTemplate" class="org.springframework.orm.jpa.JpaTemplate">
<beans:property name="entityManagerFactory">
<beans:ref bean="entityManagerFactory" />
</beans:property>
</beans:bean>
<beans:bean id="entityManagerFactory"
class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
<!-- added by shiju for getting atomoikas xa datasource-->
<beans: property name="dataSource">
<beans: ref bean="dataSource"/>
</beans: property>
<beans: property name="persistenceUnitName" value="payhub" />
<beans: property name="jpaVendorAdapter">
<beans:bean
class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
<beans: property name="generateDdl" value="false" />
<beans: property name="showSql" value="true" />
<beans: property name="databasePlatform" value="${database.target}" />
</beans:bean>
</beans: property>
<beans: property name="persistenceXmlLocation">
<beans:value>classpath:META-INF/persistence.xml</beans:value>
</beans:property>
</beans:bean>
java.lang.NoSuchMethodError: javax.persistence.EntityManagerFactory.getCriteriaBuilder () Ljavax / persistence / attribute / CriteriaBuilder; ...
Не могли бы вы дать другое решение?