Olá Pessoal,
O troubleshooting de hoje é para qume está sobrendo com o Hibernate e Spring. Vamos ver os erros e como podemos resolver.
Caused by: java.lang.IllegalStateException: No persistence exception translators found in bean factory. Cannot perform exception translation.
at org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.detectPersistenceExceptionTranslators
Esse erro acontece normalmente quando estamos usando a versão do Hibernate 4 no Spring, porém usando as configurações do Hibernate 3. A resolução é simples, veja:
No hibernate 3 usamos o translation assim:
<bean class=”org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor”/>
No Hibernate 4.x deve ser assim:
<bean class=”org.springframework.orm.hibernate4.HibernateExceptionTranslator”/>
O sessionFactory também deve ser alterado, veja:
No Hibernate 3 é assim:
<bean id=”sessionFactory” class=”org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean”>
Mas no Hibernate 4 deve ser assim:
<bean id=”sessionFactory” class=”org.springframework.orm.hibernate4.LocalSessionFactoryBean”>
Pronto! Assim resolvemos a exception de translation com Hibernate. Fiquem espertos com esses detalhes para não gastar tanto tempo.
Abracos, see ya!!