天天看点

spring 错误 java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderServlet

引用:javascript:void(0)

观察是否还有异常:java.lang.ClassNotFoundException:org.springframework.web.context.ContextLoaderServlet

所以ContextLoaderServlet 没有成功加载,导致web.xml构建spring容器失败!所以在引用WebApplicationContextUtils时,出现java.lang.NoClassDefFoundError:org/springframework/web/context/support/WebApplicationContextUtils

情况1:WebApplicationContext wctx=WebApplicationContextUtils.getRequiredWebApplicationContext(servletContext); 

我的spring-web.jsr的包已经加上了,为什么程序运行时,找不到WebApplicationContextUtils类呢? 

有一个教程上说了这样的一句话,我不理解是什么意思“在Action初始化时获得一个应用程序上下文。重用spring的WebApplicationContextUtils类,如果没有可用的上下文,该动作不会正确的初始化”。

情况2:(大多数是在这,被雷到了!哈哈)

你的工程包有可能都是引用的,需要把它们都手动拷贝到工程中来!

情况3:

spring框架有自已内在一套映射机制,楼主的问题是由于没有找到相应的映射BEAN引用而产生! 

<context-param> 

<param-name>contextconfiglocation</param-name> 

<param-value>com/wenjing/hibernate/test/wenjing-servlet.xml</param-value> 

</context-param> 

这一段换一种方式试一试,可以写到spring-servlet.xml当中引用 

内容如下 

bean id="newBaseAction" class="db.PBaseAction"> 

<property name="view"><value>newBaseAction</value></property> 

</bean>   

    情况4:

你用的是hibernate3.0吧! 但你的spring配置文件中不是 

<bean id="sessionFactory" class="org.springframework.orm.hibernate.LocalSessionFactoryBean"> 

应该是: 

<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> 

你试试!