開発者ドキュメント

ClassNotFoundException:org.springframework.web.context.ContextLoaderListener

問題

  <!-- file : web.xml -->
 <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>/WEB-INF/Spring/applicationContext.xml</param-value>
  </context-param>

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

そして、一般的なエラーメッセージはサーバーがサーバーの起動中にこのSpringの `ContextLoaderListener`クラスを見つけることができないということです。

SEVERE: Error configuring application listener of class
org.springframework.web.context.ContextLoaderListener java.lang.ClassNotFoundException:

org.springframework.web.context.ContextLoaderListener
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1516)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1361)
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3915)
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4467)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
    at org.apache.catalina.core.StandardHost.start(StandardHost.java:785)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
    at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
    at org.apache.catalina.core.StandardService.start(StandardService.java:519)
    at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:581)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)

解決策

これは、デプロイメントとデバッグ環境で常に発生します。

1.デプロイメント環境

デプロイメント環境では、サーバークラスパスにSpring jarライブラリ(例:spring-2.5.6.jar)が含まれていることを確認してください。

  • Spring3

    の場合、 `ContextLoaderListener`は

    spring-web.jar ** に移動され、Mavenセントラルリポジトリからライブラリを取得できます。

    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-web</artifactId>
        <version>3.0.5.RELEASE</version>
    </dependency>

2.環境の変化

デバッグ環境では、手順はIDEによって異なる場合がありますが、解決方法は同じです。 Eclipseでは、開発者は通常、tomcat、jbossを作成します…​デバッグ用のアプリケーションサーバーは、正しいSpring jarが含まれていることを確認してください。

{空} 1。あなたのデバッグサーバをダブルクリックしてください。+ 2. “Open launch configuration”をクリックして、サーバ環境にアクセスしてください。



{空} 3。 classpathタブ+ 4をクリックします。ここにSpringのjarファイルを含めます。また、Springの依存関係のために一般的なログjarが必要になることがあります。



{空} 5。完了したら、もう一度アプリケーションを実行します。

モバイルバージョンを終了