`
yesjavame
  • 浏览: 687196 次
  • 性别: Icon_minigender_2
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

hibernate中抛出的一个奇怪错误

阅读更多

4.今天遇到一个很让人郁闷的问题:一直运行良好的程序抛出了一个匪夷所思的异常,异常堆栈内容如下:
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'customerDAO' defined in ServletContext resource [/WEB-INF/spring-config/customerContext.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/spring-config/applicationContext.xml]: Initialization of bean failed; nested exception is java.lang.AbstractMethodError: org.hibernate.type.StringType.objectToSQLString(Ljava/lang/Object;)Ljava/lang/String;
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in ServletContext resource [/WEB-INF/spring-config/applicationContext.xml]: Initialization of bean failed; nested exception is java.lang.AbstractMethodError: org.hibernate.type.StringType.objectToSQLString(Ljava/lang/Object;)Ljava/lang/String;
java.lang.AbstractMethodError: org.hibernate.type.StringType.objectToSQLString(Ljava/lang/Object;)Ljava/lang/String;
at org.hibernate.persister.entity.SingleTableEntityPersister.<init>(SingleTableEntityPersister.java:267)
at org.hibernate.persister.PersisterFactory.createClassPersister(PersisterFactory.java:55)
at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:211)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1005)
at org.springframework.orm.hibernate3.LocalSessionFactoryBean.newSessionFactory(LocalSessionFactoryBean.java:825)
at org.springframework.orm.hibernate3.LocalSessionFactoryBean.afterPropertiesSet(LocalSessionFactoryBean.java:751)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1091)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:396)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:233)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:145)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:186)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:106)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1046)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:857)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:378)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:233)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:145)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:283)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:313)
at org.springframework.web.context.support.AbstractRefreshableWebApplicationContext.refresh(AbstractRefreshableWebApplicationContext.java:139)
at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:252)
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:190)
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:49)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3827)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4343)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:823)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:807)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:595)
at org.apache.catalina.core.StandardHostDeployer.addChild(StandardHostDeployer.java:903)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.commons.beanutils.MethodUtils.invokeMethod(MethodUtils.java:216)
at org.apache.commons.digester.SetNextRule.end(SetNextRule.java:256)
at org.apache.commons.digester.Rule.end(Rule.java:276)
at org.apache.commons.digester.Digester.endElement(Digester.java:1058)
at org.apache.catalina.util.CatalinaDigester.endElement(CatalinaDigester.java:76)
at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source)
at org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source)
at org.apache.xerces.impl.dtd.XMLDTDValidator.emptyElement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentScannerImpl$ContentDispatcher.scanRootElementHook(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at org.apache.commons.digester.Digester.parse(Digester.java:1567)
at org.apache.catalina.core.StandardHostDeployer.install(StandardHostDeployer.java:488)
at org.apache.catalina.core.StandardHost.install(StandardHost.java:863)
at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:483)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:427)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:983)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:349)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1091)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:789)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1083)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:478)
at org.apache.catalina.core.StandardService.start(StandardService.java:480)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:2313)
at org.apache.catalina.startup.Catalina.start(Catalina.java:556)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:287)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:425)

在网上搜了一遍,没发现任何人遇到过这种错误,最后好不容易在hibernate官方网站上找到一个有用的内容,说这个问题,可能是jvm -classic选项的问题,然后说建议重新用自己的JDK编译hbierante(原文地址:http://www.hibernate.org/116.html。标题名为:I see a java.lang.AbstractMethodError: net/sf/hibernate/persister/AbstractEntityPersister.... at startup!)
,然后由这个得到启发用最新版的hibernate(3.13)替换以前的hibernate(3.05),以前的hibernate(3.05)是spring(1.2.8)版本自带的,当时为了兼容性考虑,就用了spring自带的hibenrate,没想到出了这个郁闷的问题

分享到:
评论

相关推荐

    hibernate的第一个例子

    **标题解析:**“hibernate的第一个例子”表明这是一个关于Hibernate框架的基础教程,主要目标是展示如何使用Hibernate进行数据持久化操作。 **描述分析:**描述提到这是一个超级简单的例子,包含一个持久化对象...

    hibernate中文参考文档

    通常包括创建一个Web应用,添加必要的依赖,配置Hibernate环境,以及运行一个简单的例子来演示如何操作数据库。 2. 体系结构:Hibernate的体系结构通常包括了核心和可选组件,比如会话(Session)和会话工厂...

    hibernate中文参考手册

    Hibernate是一个开放源代码的对象关系映射(ORM)框架,它极大地简化了Java应用程序对数据库的操作,使得开发者可以使用面向对象的方式来处理数据,而无需过多关注底层SQL语句的编写。 在Hibernate中,核心概念包括...

    hibernate错误示例一

    在本示例中,我们将探讨一个关于Hibernate的常见错误,特别是与一对一(OneToOne)关系映射相关的错误。通过分析这个错误,我们可以深入理解Hibernate的OneToOne关联,并学习如何正确配置和解决此类问题。 标题...

    Hibernate错误及解决办法集合

    **可能原因**:该错误表示Hibernate尝试从数据库中查询一个不存在的字段,通常是由于实体类属性名与数据库字段名不一致导致的。 **解决方案**: 1. **检查实体类属性名**:确认实体类中的属性名与数据库表中的字段...

    Hibernate,hibernate笔记

    在描述中提到的`org.hibernate.PropertyValueException: not-null property references a null or transient value`是Hibernate抛出的一个常见异常,表示尝试保存一个实体时,其某个非空属性为null或未持久化。...

    Hibernate 中文api 等学习资料

    Hibernate是一个开源的对象关系映射(ORM)框架,它允许Java开发者将数据库操作与对象模型无缝结合。通过Hibernate,开发者可以避免编写大量的SQL语句,提高开发效率,同时使代码更加可读和易于维护。它支持多种...

    hibernate人生中第一个成功及完美程序(适合入门者)

    在这个“hibernate人生中第一个成功及完美程序”中,我们将深入探讨Hibernate的基本概念、核心功能以及如何构建一个简单的示例应用。 一、Hibernate概述 Hibernate是一个开源的ORM框架,它的主要任务是将Java对象与...

    深入浅出 Hibernate.pdf

    1. **Session**: Session是Hibernate中最常用的一个接口,它代表了一个与数据库之间的会话。所有的持久化操作都应该在Session的上下文中进行。 2. **SessionFactory**: SessionFactory是线程安全的,它是创建Session...

    Hibernate几个常见错误解决方式

    类型转换错误发生在试图将一个对象强制转换为另一个不兼容的类型时。在这个例子中,可能是尝试将一个`OokjDateTime`对象转换为预期的基本类型(如`java.sql.Date`或`java.util.Date`)。确保在存储和检索日期字段时...

    Hibernate中文API大全

    当删除对象时, Hibernate必须使用每一个字段的值来确定一条记录(在组合元素表中,没有单独的关键字段), 如果有为null的字段,这样做就不可能了。你必须作出一个选择,要么在组合元素中使用不能为空的属性,要么...

    hibernate错误解决方案

    当执行查询操作时,如果根据指定的ID没有找到对应的实体对象,Hibernate会抛出 `org.springframework.orm.ObjectRetrievalFailureException` 异常。例如,在以下场景中: ``` org.springframework.orm....

    Hibernate配置常见错误

    错误表现:在Session关闭后尝试访问懒加载属性,抛出“org.hibernate.LazyInitializationException: could not initialize proxy - no Session”异常。 解决方案:理解并合理使用Open Session in View(OSIV)模式...

    hibernate常见错误解决方案

    当Hibernate尝试解析一个XML配置文件时,如果文件中的某些字符不符合UTF-8编码规则,就会抛出此类异常。 **解决方法:** - 确保所有XML配置文件中的文本都符合UTF-8编码标准。 - 使用文本编辑器或IDE检查并修复问题...

    Hibernate构建一个CURD的程序

    在IT行业中,Hibernate是一个非常重要的Java持久化框架,它简化了数据库操作,使得开发者能够更加专注于业务逻辑,而不是底层的数据存取细节。本教程将深入探讨如何使用Hibernate构建一个完整的CRUD(创建、读取、...

    hibernate中英文API文档

    开发者指南通常为开发者提供了一个全面的指南,指导如何在实际项目中应用Hibernate。它可能包含了从安装设置到高级特性的全方位指导,如第二级缓存、拦截器、事件监听器、多租户支持等。 4. **Hibernate Getting ...

    Hibernate4.1.11中文手册

    Hibernate是一个强大的持久化框架,它通过提供一种对象-关系映射(ORM)机制,将Java对象与数据库中的记录进行关联。这使得开发者能够用面向对象的方式来处理数据库,提高了开发效率和代码的可维护性。Hibernate支持...

    hibernate validate 中文文档 英文文档

    Hibernate是一个开源的对象关系映射(ORM)框架,它对JPA(Java持久性API)进行了实现,并提供了对象/关系映射工具以及Java数据库连接的封装。Hibernate Validator是Hibernate的子项目,它是一个校验框架,提供了在...

Global site tag (gtag.js) - Google Analytics