首页 文章

在ContextLoaderListener上,使用spring 3.1.1的Init Tomcat失败

提问于
浏览
0

我试图用Spring加载Tomcat服务器但是没有错误(见下文),我只使用一个zip spring :spring-core-3.1.1.RELEASE.jar并在web.xml中做了非常基本的配置任何帮助将不胜感激 .

Thanx提前 . 严


web.xml:

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

        <context-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>
                /WEB-INF/config/controllers.xml
            </param-value>
        </context-param>

错误:

SEVERE:异常将上下文初始化事件发送到类的监听器实例org.springframework.web.context.ContextLoaderListener java.lang.NoSuchMethodError:org.springframework.web.context.ConfigurableWebApplicationContext.setId(Ljava / lang / String;)V at org . springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:369)org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:284)org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener . java:111)org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4779)atg.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5273)org.apache.catalina.util .LifecycleBase.start(LifecycleBase.java:150)位于org.apache.catalina.core.ContainerBase $ StartChild.call(ContainerBase.java:1566)org.apache.catalina.core.ContainerBase $ StartChild.call(ContainerBase.java) :1556)在java.util . concurrent.FutureTask $ Sync.innerRun(Unknown Source)at java.util.concurrent.FutureTask.run(Unknown Source)at java.util.concurrent.ThreadPoolExecutor $ Worker.runTask(Unknown Source)at java.util.concurrent.ThreadPoolExecutor $ java.lang.Thread.run上的Worker.run(未知来源)(未知来源)

2 回答

  • 2

    尝试将 spring-webmvc 依赖项添加到您的pom:

    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-webmvc</artifactId>
        <version>3.1.1.RELEASE</version>
    </dependency>
    
  • 2

    缺少的方法位于 ConfigurableApplicationContextspring-context*.jar . 所以 spring-core-3.1.1.RELEASE.jar 是你唯一的Spring JAR是不可能的 . 尝试添加:

    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-context</artifactId>
      <version>3.1.1.RELEASE</version>
    </dependency>
    

    到你的CLASSPATH .

相关问题