首页 > 代码库 > java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener

java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener

前言:

  MyEclipse整合ssh框架,间歇性Tomcat启动发生java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener异常,而且在前几次运行正常的情况下,出现这个异常。

 

工具:

  MyEclipse2015 2.0版本,struts2.1,spring4.1.0,hebernate4.0.4

 

异常信息:

 java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1305)
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1157)
    at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:520)
    at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:501)
    at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:120)
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4650)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5166)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:725)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:701)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:717)
    at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1096)
    at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1756)
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
    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)

 

解决方案:

  1.点击工程下Spring 4.1.0 Libraries---->spring-web-4.1.0.RELEASE.jar---->org.springframework.web.context查看是否存在ContextLoaderListener.class类。如果缺少jar包,需自行导入。

  2.查看web.xml文件配置是否正确。

 <listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>       
  </listener>

  以上两步无误,还是出现该异常,进行第三部。

  3.进入tomcat的webapp目录,清空里面部署的项目,再重新加载工程,启动tomcat。

  重复第三步两三次,还是出现该异常,可初步判断MyEclipse出现BUG。

  4.重启MyEclipse。

java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener