日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

‘configurationClass‘ must be assignable to [org.hibernate.cfg.Configuration]

作者:Jandey.柳 更新時間: 2022-10-14 編程語言

先貼出報錯:

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'auth2Filter' defined in ServletContext resource [/WEB-INF/applicationContext-authz.xml]: Cannot resolve reference to bean 'oauthService' while setting bean property 'oauthService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'oauthService': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'clientDetailsDAO' defined in ServletContext resource [/WEB-INF/applicationContext-dao.xml]: Cannot resolve reference to bean 'sessionFactory' while setting bean property 'sessionFactory'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in ServletContext resource [/WEB-INF/applicationContext-dao.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean]: Constructor threw exception; nested exception is java.lang.IllegalArgumentException: 'configurationClass' must be assignable to [org.hibernate.cfg.Configuration]
?? ?at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:328)
?? ?at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:106)
?? ?at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1325)
?? ?at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1086)
?? ?at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)
?? ?at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
?? ?at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:293)
?? ?at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
?? ?at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:290)
?? ?at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:192)
?? ?at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:322)
?? ?... 121 more
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'oauthService': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'clientDetailsDAO' defined in ServletContext resource [/WEB-INF/applicationContext-dao.xml]: Cannot resolve reference to bean 'sessionFactory' while setting bean property 'sessionFactory'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in ServletContext resource [/WEB-INF/applicationContext-dao.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException:
Could not instantiate bean class [org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean]: Constructor threw exception; nested exception is java.lang.IllegalArgumentException: 'configurationClass' must be assignable to [org.hibernate.cfg.Configuration]

我的項目是Eclipse使用JBoss容器啟動一個EJB的老項目(jboss-5.1.0.GA、EJB3.0),啟動后出現上述報錯。通過一天不斷嘗試錯誤,本地解決這個問題。

解決方法:項目中新增四個jar包:hibernate-annotations.jar、hibernate-commons-annotations.jar、hibernate-entitymanager.jar、hibernate-validator.jar。(直接從 jboss-5.1.0.GA\common\lib目錄中獲取)

----------------------------------------------------------------------------------------------------------------

如果沒有解決你的問題,可以看看下面的分析,或許對你有啟發!!!

分析問題:

這個報錯是是由hibernate引起,具體原因暫時沒有時間去分析,而且設計底層代碼,難度也比較大,需要花費大量時間。通過平時做項目的經驗,大部分是兩個原因:(1)缺少jar包;(2)jar包沖突。經過分析發現,目錄 jboss-5.1.0.GA\common\lib 下存在hibernate 的jar包,項目部署的war包中也存在部分hibernate的jar包。

第一步:考慮jar包沖突,刪除 jboss-5.1.0.GA\common\lib 中和項目相同的jar包(先備份哈),發現報錯更多了,一堆“NoClassDefFoundError”報錯,沒辦法再把刪掉的jar包一個一個拷回來。最終又全部拷回來了。(這一步比較花時間,需要耐心!)

第二步:考慮缺少jar包,從 jboss-5.1.0.GA\common\lib 中把項目缺少的相關hibernate的jar包拷貝到項目中。如果有沖突就先刪掉,來來回回可能需要嘗試幾遍。我嘗試到這里已經不再報上面的錯誤。新增的jar包有四個:hibernate-annotations.jar、hibernate-commons-annotations.jar、hibernate-entitymanager.jar、hibernate-validator.jar。

第三步:經過第二步后,還是有報錯,又新增了以下jar包:cglib-2.2.jar、asm-3.1.jar。(版本可能需要根據Spring的版本進行調整,我的是Spring3.0.6)

最后算是沒有這個報錯了。

原文鏈接:https://blog.csdn.net/csdn122325735/article/details/127287159

欄目分類
最近更新