2 pangcq699885 pangcq699885 于 2016.01.24 22:05 提问

升级ssh整合出现错误java.lang.NoSuchMethodError: 2C

下面是控制台打印的信息,麻烦看到的高手帮忙解决:
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in class path resource [cn/com/hope/framework/spring/applicationContext-datasource.xml]: Invocation of init method failed; nested exception is java.lang.NoSuchMethodError: org.hibernate.tool.hbm2ddl.SchemaUpdate.(Lorg/hibernate/service/ServiceRegistry;Lorg/hibernate/cfg/Configuration;)V
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1578)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:545)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:351)
... 28 more
Caused by: java.lang.NoSuchMethodError: org.hibernate.tool.hbm2ddl.SchemaUpdate.(Lorg/hibernate/service/ServiceRegistry;Lorg/hibernate/cfg/Configuration;)V
at org.hibernate.internal.SessionFactoryImpl.(SessionFactoryImpl.java:522)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1859)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1930)
at org.springframework.orm.hibernate4.LocalSessionFactoryBuilder.buildSessionFactory(LocalSessionFactoryBuilder.java:372)
at org.springframework.orm.hibernate4.LocalSessionFactoryBean.buildSessionFactory(LocalSessionFactoryBean.java:454)
at org.springframework.orm.hibernate4.LocalSessionFactoryBean.afterPropertiesSet(LocalSessionFactoryBean.java:439)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1637)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1574)
... 35 more

6个回答

SF031
SF031   2016.01.24 22:24

Spring配置文件里面注册action时出错,最大可能是class属性后面的地址不对 。你仔细看看

pangcq699885
pangcq699885 是把hibernate3换成hibernate4出错的
2 年多之前 回复
jia20003
jia20003   2016.01.24 22:14

最大的可能是你配置不对, bean没有指定到正确hibernate class导致事务配置失败
或者是你的maven/ant中引入的hibernate/spring的版本不对

只有这个原因才会出这个错误,而且你的对应Class中肯定没有这个方法, 办法就是改你的配置,或者升级你的hibernate / spring3 的版本

pangcq699885
pangcq699885 是把hibernate3换成hibernate4出错的
2 年多之前 回复
a510835147
a510835147   2016.01.25 08:54

你这是一启动就报错了么。 可以看看是不是jar包冲突或者没导入这jar包

pangcq699885
pangcq699885 恩是启动报错的,是把hibernate3换成hibernate4出错的
2 年多之前 回复
meng20166
meng20166   Rxr 2016.01.25 11:19
    你是不是把Hibernate3改成了Hibernate4,如果是的话,Hibernate4没有HibernateDaoSupport这个类,你需要手动写的
meng20166
meng20166 hibernate4跟hibernate3jar包不一样,就是hibernate4没有提供HibernateDaoSupport这个类,你就要在dao层创建sessionFactory或者自己写HibernateDaoSupport类了
2 年多之前 回复
pangcq699885
pangcq699885 正是把hibernate3换成4所导致出现的错误,我看别人的集成也没发现哪里写了HibernateDaoSupport这个类,可以再讲详细点吗?
2 年多之前 回复
pangcq699885
pangcq699885   2016.01.25 18:29

找到答案了,是因为在项目中自定义了个org.hibernate.tool.hbm2ddl.SchemaUpdate类而导致的,谢谢各位的耐心帮助。。。

Royal_lr
Royal_lr   Ds   Rxr 2016.01.28 12:01

sessionFactory注入异常,一般是datasource是原因

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
hibernate4 和 spring3 整合注意事项 否则java.lang.NoSuchMethodError异常
hibernate4 和 spring3 整合注意事项 否则java.lang.NoSuchMethodError异常 最近一直在研究S2SH开发框架,把三部分分别看完之后开始整合,发现由于 hibernate 高版本已经又完善了好多功能,导致与之前跟 spring 整合的方法有些出入。 先说一下与 hibernate3 整合的时候获取 Session 的办法吧。
SSH 整合报sessionfactory的错误以及解决方案
SSH 整合报sessionfactory的错误以及解决方案 开源中国 发表于 2014-08-30 22:36:21 org.springframework.beans.factory.BeanCreationException:   Error   creating   bean   with   name   'sessionFactory '   de
SSH框架整合问题,java.lang.reflect.InvocationTargetException
在做SSH项目的时候,先建好数据库表格然后反向生成了Hibernate的DAO类。 在自动生成的DAO类里面有一个方法 public List findByProperty(String propertyName, Object value) { log.debug("finding User instance with property: " + propertyName + "
Spring4+Hibernate4整合经验:事务配置导致的java.lang.NoSuchMethodError异常
最近在做项目的时候,升级之前的项目框架,从spring3+hibernate3升级到spring4+hibernate4+shiro框架的时候,遇到了一个nosuchmethod的异常问题,网上大部分资料都是说jar冲突问题,但是jar使用mvn控制的,冲突都解决了,仍然报这个异常,并且提示的是applicationContext.xml上下文环境配置文件里的异常异常代码如下:Caused by:
SSH整合项目中容易出现的错误
SSH整合项目中容易出现的错误
Spring3.2+hibernate4整合报错 NoSuchMethodError:openSession()解决办法
出现问题的原因是Spring3.1之后,与hibernate4的整合,Spring就不用HibernateDaoSupport这个类了,于是出现了了java.lang.NoSuchMethodError:org.hibernate.SessionFactory.openSession()Lorg/hibernate/classic/Session这个错误。 解决办法很简单: 打开applica
ssh整合中常出现的问题——报404错误
大多数情况下,开发者会把struts .spring .hibernaet这三的框架整合起来用。在整个过程中,经常会出现一些问题。 当ssh框架整合之后,我们就开始测试程序了,就在这时出现了一种很令人费解的问题,无论打开哪一个jsp页面都报404的错误,下面给大家介绍一种解决的方法。 其实这个问题就是包冲突所造成的。点击进入Configure Build Path…把Spring 2.5.6Libr
maven项目java.lang.NoSuchMethodError,java.lang.NoClassDefFoundError
maven项目报如下异常:                      java.lang.NoSuchMethodError                     java.lang.NoClassDefFoundError 处理: 1.首先检查类名,包名有无错误,排除名称错误.            2. 无名称错误后, 项目clean, 后再部署,即可
关于SSH整合时遇到的一些问题
小弟最近自学关于SSH版的WEB项目,这几天整合SSH时也报了很多错误。所以特此写下一些遇到的错误以供大家和自己以后借鉴 1.报获取bean空指针 那么很可能你web.xml没有初始化spring.连初始化都没有,那么肯定是空指针。 2.报所在类找不着时,而你确实导进去了,看你是否是先导入WEB-INF目录下的LIB文件夹下。 3.报JSP页面错误时,很可能是版本不支持。在指令改为即可。
spring整合redis的错误
在整合spring和redis的时候出现了如下的错误 org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'jedisConnectionFactory' defined in class path resource [application-context.xml]: