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。完了したら、もう一度アプリケーションを実行します。