嵌套异常是java.lang.ClassNotFoundException:com.util.HibernateAwareObjectMapper

时间:2015-12-31 05:57:38

标签: eclipse spring-mvc

使用Spring Mvc 4.xHibernate 4.x创建网络应用程序。我在servlet中配置了以下代码,但它没有获取类文件。每当我运行代码时,它都会给ClassNotFoundException。根据目录结构,类存在于该位置,但它仍显示ClassNotFoundException。我重新启动eclipse,清理项目,重新部署项目,然后再次尝试,但仍然没有结果。请帮忙。以下是我添加的代码。如果我对不同的项目使用相同的目录结构相同的代码,那么一切正常。我也检查了罐子,所有都已到位。

<mvc:annotation-driven>
       <mvc:message-converters>
                <!--  HibernateAware mapper -->
                <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
                    <property name="objectMapper">
                        <bean class="com.util.HibernateAwareObjectMapper" />
                    </property>
                </bean>
            </mvc:message-converters>
   </mvc:annotation-driven> 

以下是我得到的例外情况。

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter#0': Cannot create inner bean 'org.springframework.http.converter.json.MappingJackson2HttpMessageConverter#0' of type [org.springframework.http.converter.json.MappingJackson2HttpMessageConverter] while setting bean property 'messageConverters' with key [0]; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.http.converter.json.MappingJackson2HttpMessageConverter#0' defined in ServletContext resource [/WEB-INF/cyc-servlet.xml]: Cannot create inner bean 'com.util.HibernateAwareObjectMapper#1975a694' of type [com.util.HibernateAwareObjectMapper] while setting bean property 'objectMapper'; nested exception is org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [com.util.HibernateAwareObjectMapper] for bean with name 'com.util.HibernateAwareObjectMapper#1975a694' defined in ServletContext resource [/WEB-INF/cyc-servlet.xml]; nested exception is java.lang.ClassNotFoundException: com.util.HibernateAwareObjectMapper
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveInnerBean(BeanDefinitionValueResolver.java:282)
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:121)
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveManagedList(BeanDefinitionValueResolver.java:351)
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:154)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1456)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1197)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:537)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:475)
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:304)
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228)
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:300)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:195)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:700)
    at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:760)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:482)
    at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:381)
    at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:293)
    at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:106)
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4939)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5434)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.http.converter.json.MappingJackson2HttpMessageConverter#0' defined in ServletContext resource [/WEB-INF/cyc-servlet.xml]: Cannot create inner bean 'com.util.HibernateAwareObjectMapper#1975a694' of type [com.util.HibernateAwareObjectMapper] while setting bean property 'objectMapper'; nested exception is org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [com.util.HibernateAwareObjectMapper] for bean with name 'com.util.HibernateAwareObjectMapper#1975a694' defined in ServletContext resource [/WEB-INF/cyc-servlet.xml]; nested exception is java.lang.ClassNotFoundException: com.util.HibernateAwareObjectMapper
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveInnerBean(BeanDefinitionValueResolver.java:282)
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:121)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1456)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1197)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:537)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:475)
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveInnerBean(BeanDefinitionValueResolver.java:269)
    ... 26 more
Caused by: org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [com.util.HibernateAwareObjectMapper] for bean with name 'com.util.HibernateAwareObjectMapper#1975a694' defined in ServletContext resource [/WEB-INF/cyc-servlet.xml]; nested exception is java.lang.ClassNotFoundException: com.util.HibernateAwareObjectMapper
    at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1327)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:452)
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveInnerBean(BeanDefinitionValueResolver.java:269)
    ... 32 more
Caused by: java.lang.ClassNotFoundException: com.util.HibernateAwareObjectMapper
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1702)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1547)
    at org.springframework.util.ClassUtils.forName(ClassUtils.java:238)
    at org.springframework.beans.factory.support.AbstractBeanDefinition.resolveBeanClass(AbstractBeanDefinition.java:392)
    at org.springframework.beans.factory.support.AbstractBeanFactory.doResolveBeanClass(AbstractBeanFactory.java:1348)
    at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1319)

1 个答案:

答案 0 :(得分:0)

好的,我知道确切的问题是什么。这是构建路径。我不得不删除eclipse的元数据,但仍然没有解决问题。最后我想到了在构建路径中添加jar。这次应用程序已部署,并且有效。