hibernate测试时遇到的几个异常及解决方法汇总

今天使用hibernate3.6.5自己配置jar lib,在测试时遇到了几个异常如下:

1.java.lang.NoSuchFieldError: INSTANCE

  • 解决:删除hibernate-annotations.jar。

2.java.lang.ClassCastException: org.hibernate.annotations.common.reflection.java.JavaReflectionManager cannot be cast to org.hibernate.annotations.common.reflection.MetadataProviderInjector

  • 解决:删除hibernate-commons-annotations.jar。

3.org.hibernate.HibernateException: No CurrentSessionContext configured!

  • 解决:添加hibernate-jpa-2.0-api-1.0.0.Final.jar

4.org.hibernate.HibernateException: No TransactionManagerLookup specified

   at org.hibernate.context.JTASessionContext.currentSession(JTASessionContext.java:81)
   at org.hibernate.impl.SessionFactoryImpl.getCurrentSession(SessionFactoryImpl.java:687)
   at com.cvv.service.UserManager.exists(UserManager.java:16)

5.没有CurrentSessionContext的配置。

解决:在集成Hibernate的环境下(例如Jboss),要在hibernate.cfg.xml中session-factory段加入: 

Xml代码 :  

<property name="current_session_context_class">jta</property>

在不集成Hibernate的环境下(例如使用JDBC的独立应用程序),在hibernate.cfg.xml中session-factory段加入:

Xml代码 :

<property name="current_session_context_class">thread</property>

测试运行,ok!

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对呐喊教程的支持。如果你想了解更多相关内容请查看下面相关链接

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。