`
Java_Fan
  • 浏览: 84959 次
  • 性别: Icon_minigender_1
  • 来自: 西安
文章分类
社区版块
存档分类
最新评论

SSH下内嵌的java.lang.ClassCastException异常查找

 
阅读更多

当我在添加了一个pojo类并配置之后,重启tomcat出现了如下的异常:

- Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Invocation of init method failed; nested exception is java.lang.ClassCastException
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1337)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:473)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
	at java.security.AccessController.doPrivileged(Native Method)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
	at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:221)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:423)
	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:729)
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:381)
	at org.springframework.web.struts.ContextLoaderPlugIn.createWebApplicationContext(ContextLoaderPlugIn.java:354)
	at org.springframework.web.struts.ContextLoaderPlugIn.initWebApplicationContext(ContextLoaderPlugIn.java:295)
	at org.springframework.web.struts.ContextLoaderPlugIn.init(ContextLoaderPlugIn.java:225)
	at org.apache.struts.action.ActionServlet.initModulePlugIns(ActionServlet.java:871)
	at org.apache.struts.action.ActionServlet.init(ActionServlet.java:359)
	at javax.servlet.GenericServlet.init(GenericServlet.java:211)
	at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1029)
	at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:862)
	at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4013)
	at org.apache.catalina.core.StandardContext.start(StandardContext.java:4357)
	at org.apache.catalina.core.StandardContext.reload(StandardContext.java:3043)
	at org.apache.catalina.startup.HostConfig.restartContext(HostConfig.java:873)
	at org.apache.catalina.startup.HostConfig.checkContextLastModified(HostConfig.java:759)
	at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1085)
	at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:327)
	at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
	at org.apache.catalina.core.StandardHost.backgroundProcess(StandardHost.java:800)
	at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1619)
	at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1628)
	at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1608)
	at java.lang.Thread.run(Thread.java:534)
Caused by: java.lang.ClassCastException
	at org.hibernate.tuple.PropertyFactory.buildVersionProperty(PropertyFactory.java:84)
	at org.hibernate.tuple.entity.EntityMetamodel.<init>(EntityMetamodel.java:160)
	at org.hibernate.persister.entity.AbstractEntityPersister.<init>(AbstractEntityPersister.java:425)
	at org.hibernate.persister.entity.SingleTableEntityPersister.<init>(SingleTableEntityPersister.java:109)
	at org.hibernate.persister.PersisterFactory.createClassPersister(PersisterFactory.java:55)
	at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:226)
	at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1218)
	at org.springframework.orm.hibernate3.LocalSessionFactoryBean.newSessionFactory(LocalSessionFactoryBean.java:814)
	at org.springframework.orm.hibernate3.LocalSessionFactoryBean.buildSessionFactory(LocalSessionFactoryBean.java:732)
	at org.springframework.orm.hibernate3.AbstractSessionFactoryBean.afterPropertiesSet(AbstractSessionFactoryBean.java:211)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1368)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1334)
	... 33 more
意思是说初始化[/WEB-INF/applicationContext.xml]时,出现了内嵌的异常java.lang.ClassCastException,引起的原因是java.lang.ClassCastException。

第一步:

在/WEB-INF/applicationContext.xml文件中通过屏蔽名为sessionFactory的bean下的一个属性来屏蔽掉hibernate.cfg.xml,

这样就拒绝了hibernate配置文件的引入,初始化时就不会加载hibernate.cfg.xml所涉及的一系列文件。

结果:没有报异常。

第二步:

第一步说明查找异常的范围正确了,把异常出现的范围缩小到hibernate配置相关的范围内。

那么现在继续在hibernate.cfg.xml中屏蔽各类对应的配置文件<mapping resource="*.hbm.xml" /> ,

当屏蔽掉<mapping resource="adam/bp/workflow/entity/TaProcDef.hbm.xml" /> 时,重启tomcat之后就不报异常了。

说明TaProcDef.hbm.xml文件的配置有问题。

第三步:

那就是如何正确配置TaProcDef.hbm.xmll文件了。

最终发现问题出现在了property中配置type出现了错误,但是修改type不一定有效。建议直接取消type这一项的配置,因为hibernate会自动匹配合适的类型。

归根结底,问题是出在了TaProcDef.hbm.xml文件的配置上。待TaProcDef.hbm.xml配置好之后,问题就解决了!




分享到:
评论

相关推荐

    java.lang.ClassCastException

    在Java编程中,`java.lang.ClassCastException`是一个运行时异常,通常发生在强制类型转换时,如果尝试将一个对象转换为其非兼容类型时就会抛出。这个异常表明在编译时可能成功的类型转换,在运行时被证明是错误的。...

    java.lang.ClassCastException(解决方案).md

    在Java编程过程中,类转换异常(java.lang.ClassCastException)是一种常见的异常,当程序试图将一个对象强制转换为不兼容的类型时,就会抛出此类异常。本文将详细介绍如何解决java.lang.ClassCastException,包括...

    java.lang.NoClassDefFoundError错误解决办法

    "java.lang.NoClassDefFoundError错误解决办法" java.lang.NoClassDefFoundError错误是一种常见的Java错误,它发生在Java虚拟机在编译时能找到合适的类,而在运行时不能找到合适的类导致的错误。下面是该错误的解决...

    java 异常种类总结【转】.docx

    java.lang.UnsupportedClassVersionError 是一种不支持的类版本错误,指的是在程序中 Java 虚拟机试图从读取某个类文件,但是发现该文件的主、次版本号不被当前 Java 虚拟机支持的时候,抛出的异常。 33. java.lang...

    JAVA常见的错误

    java.lang.ArithmeticException 是一种常见的错误,发生在数学运算异常时。例如,在程序中出现了除以零这样的运算时,就会出现该错误。解决方法是检查代码,确保数学运算是正确的。 4. java.lang....

    java异常类型.txt

    5. **`java.lang.ClassCastException`** - 在强制类型转换失败时抛出此异常,即尝试将一个对象强制转换为其实际类型以外的类型时。 6. **`java.lang.ArithmeticException`** - 发生算术运算错误时抛出此异常,例如...

    JAVA常见异常解析,面试用

    - **java.lang.ClassCastException**:当尝试将对象强制转换为不兼容的类型时抛出。 - **java.lang.NegativeArraySizeException**:创建具有负长度的数组时抛出。 - **java.lang.SecurityException**:在安全管理器...

    java常见异常.pdf

    7. **java.lang.ClassCastException**: 当试图将对象强制转换为其非兼容类型时抛出。在进行类型转换前,应确认对象的实际类型。 8. **java.lang.NegativeArraySizeException**: 创建具有负长度的数组会导致此异常。...

    JAVA 编程中的异常

    7. **`java.lang.ClassCastException`** 在进行类型强制转换时,如果目标类型与实际类型不符,就会抛出此异常。在进行类型转换之前,使用`instanceof`关键字检查对象的实际类型。 8. **`java.lang....

    Java异常处理.pdf

    | +-- java.lang.ClassCastException | +-- ... | +-- java.io.IOException +-- java.sql.SQLException +-- ... ``` `RuntimeException`是所有运行时异常的基类,包括像`NullPointerException`和`Arithmetic...

    java异常详解

    - **`java.lang.ClassCastException`**:当试图将对象强制转换为不兼容类型时抛出。 - **`java.lang.AbstractMethodError`**:当子类没有重写抽象父类的抽象方法时抛出。 - **`java.lang.ClassCircularityError`**:...

    java操作xml dom dom4j sax jdom

    在Java编程中,XML(可扩展标记语言)是一种被广泛用于数据存储和交换的格式。为了处理XML文档,Java提供了多种API,其中最常用的包括DOM、SAX、DOM4J和JDOM。以下是对这些方法的详细介绍: 1. DOM(Document ...

    JAVA常见异常解析

    7. **java.lang.ClassCastException**: 在强制类型转换时,如果目标类型与实际对象的类型不匹配,会抛出此异常。在进行类型转换前,应先使用`instanceof`关键字检查对象的类型。 8. **java.lang....

    android gson 混淆代码 问题

    在Android开发中,Gson库是一个非常常用的工具,它由Google提供,用于将Java对象转换为JSON字符串,反之亦然。然而,在混淆代码时,可能会遇到一些问题,导致Gson无法正常工作。本文将深入探讨这些问题及其解决方案...

    JAVA常见错误(方便开发人员查找问题,也方便测试人员对bug进行描述)

    12. java.lang.ClassCastException 该错误是当试图将对象强制转换为不是实例的子类时,抛出该异常。解决方法是检查对象类型的合法性。 13. java.lang.ClassNotFoundException 该错误是当应用程序试图使用以下方法...

    java异常分析及解决办法

    7. **java.lang.ClassCastException**: 在类型转换时,如果目标类型与实际类型不符,就会抛出此异常。在进行类型转换时,确保转换的合法性。 8. **java.lang.NegativeArraySizeException**: 创建具有负大小的...

    client-adapter.es7x-1.1.5-SNAPSHOT-jar-with-dependencies.jar

    Load canal adapter: es7 failed java.lang.RuntimeException: java.lang.RuntimeException: java.lang.ClassCastException: ...canal-adapter1.1.5报错, 将client-adapter.es7x-1.1.5-SNAPSHOT-jar-with-dependencies....

    java编程常见问题

    12. **java.lang.ClassCastException**: 强制类型转换失败时抛出。只有当对象是目标类的子类或实现了目标接口时,才能成功进行类型转换。 13. **java.lang.ClassNotFoundException**: 在运行时找不到指定的类时,抛...

Global site tag (gtag.js) - Google Analytics