我正试图通过此链接实现此购物车示例http://o7planning.org/en/10605/create-a-java-shopping-cart-web-application-using-spring-mvc-and-hibernate
我使用了相同的代码 . 但是我收到以下错误 .
警告:在上下文初始化期间遇到异常 - 取消刷新尝试:org.springframework.beans.factory.BeanCreationException:创建名为'myDBAuthenticationService'的bean时出错:注入自动连接的依赖项失败;嵌套异常是org.springframework.beans.factory.BeanCreationException:无法自动装配字段:private org.o7planning.springmvcshoppingcart.dao.AccountDAO org.o7planning.springmvcshoppingcart.authentication.MyDBAuthenticationService.accountDAO;嵌套异常是org.springframework.beans.factory.BeanCreationException:创建名为'accountDAO'的bean时出错:注入自动连接的依赖项失败;嵌套异常是org.springframework.beans.factory.BeanCreationException:无法自动装配字段:private org.hibernate.SessionFactory org.o7planning.springmvcshoppingcart.dao.impl.AccountDAOImpl.sessionFactory;嵌套异常是org.springframework.beans.factory.BeanCreationException:在org.o7planning.springmvcshoppingcart.config.ApplicationContextConfig中定义名为'sessionFactory'的bean时出错:通过工厂方法进行Bean实例化失败;嵌套异常是org.springframework.beans.BeanInstantiationException:无法实例化[org.hibernate.SessionFactory]:工厂方法'getSessionFactory'抛出异常;嵌套异常是java.lang.NoSuchMethodError:org.hibernate.boot.registry.BootstrapServiceRegistryBuilder.applyClassLoader(Ljava / lang / ClassLoader;)Lorg / hibernate / boot / registry / BootstrapServiceRegistryBuilder; 2017年5月7日下午12:31:59 org.springframework.web.context.ContextLoader initWebApplicationContext SEVERE:上下文初始化失败org.springframework.beans.factory.BeanCreationException:创建名为'myDBAuthenticationService'的bean时出错:注册自动连接的依赖项失败;嵌套异常是org.springframework.beans.factory.BeanCreationException:无法自动装配字段:private org.o7planning.springmvcshoppingcart.dao.AccountDAO org.o7planning.springmvcshoppingcart.authentication.MyDBAuthenticationService.accountDAO;嵌套异常是org.springframework.beans.factory.BeanCreationException:创建名为'accountDAO'的bean时出错:注入自动连接的依赖项失败;嵌套异常是org.springframework.beans.factory.BeanCreationException:无法自动装配字段:private org.hibernate.SessionFactory org.o7planning.springmvcshoppingcart.dao.impl.AccountDAOImpl.sessionFactory;嵌套异常是org.springframework.beans.factory.BeanCreationException:在org.o7planning.springmvcshoppingcart.config.ApplicationContextConfig中定义名为'sessionFactory'的bean时出错:通过工厂方法进行Bean实例化失败;嵌套异常是org.springframework.beans.BeanInstantiationException:无法实例化[org.hibernate.SessionFactory]:工厂方法'getSessionFactory'抛出异常;嵌套异常是java.lang.NoSuchMethodError:org.hibernate.boot.registry.BootstrapServiceRegistryBuilder.applyClassLoader(Ljava / lang / ClassLoader;)Lorg / hibernate / boot / registry / BootstrapServiceRegistryBuilder; org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:334)org.springframework.beans.factory org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1214)org.springframework.beans.factory orsu.springframework.beans.factory.support.AbstractBeanFactory $ 1.getObject(org.springframework.beans . 在org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)的org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:022)org上的AbstractBeanFactory.java:) .springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactor y.java:197)atg.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:772)at atorg.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:839)位于org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext的org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:538) ContextLoader.java:444)位于org.apache.catalina的org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:326)org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:107) .core.StandardContext.listenerStart(StandardContext.java:4851)org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5314)org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145 )atg.apache.catalina.core.ContainerBase $ StartChild.call(ContainerBase.java:1408)atg.apache.catalina.core.ContainerBase $ StartChild.call(ContainerBase.java:1398)at java.util.concurrent . 浮图reTask.run(FutureTask.java:266)java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)at java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:617)at java.lang .Thread.run(Thread.java:745)
Could anyone help me solving this?
2 回答
使用最新的hibernate(pom.xml)更改Hibernate版本:
迮
问题出在ApplicationContextConfig.java类中 . 该类包含以下导入
如果要保留项目结构,则将其更改为
Note 我将hibernate5更改为hibernate4以匹配pom.xml中的依赖版本
这应该是一种替代解决方案 .
如果有帮助我想听听 .
感谢和问候