2014-10-29 254 views
3

錯誤嚴重:異常發送上下文初始化事件監聽器實例

SEVERE: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener 
java.lang.NoSuchMethodError: org.slf4j.spi.LocationAwareLogger.log(Lorg/slf4j/Marker;Ljava/lang/String;ILjava/lang/String;Ljava/lang/Throwable;)V 

不知道哪裏是從獲得。 我已經包括了實際的錯誤在這裏:

Oct 29, 2014 4:30:44 PM org.apache.catalina.core.StandardContext listenerStop 
SEVERE: Exception sending context destroyed event to listener instance of class org.springframework.web.context.ContextLoaderListener 
java.lang.NoSuchMethodError: org.slf4j.spi.LocationAwareLogger.log(Lorg/slf4j/Marker;Ljava/lang/String;ILjava/lang/String;Ljava/lang/Throwable;)V 
    at org.apache.commons.logging.impl.SLF4JLocationAwareLog.warn(SLF4JLocationAwareLog.java:199) 
    at org.springframework.context.support.AbstractApplicationContext.doClose(AbstractApplicationContext.java:883) 
    at org.springframework.context.support.AbstractApplicationContext.close(AbstractApplicationContext.java:841) 
    at org.springframework.web.context.ContextLoader.closeWebApplicationContext(ContextLoader.java:551) 
    at org.springframework.web.context.ContextLoaderListener.contextDestroyed(ContextLoaderListener.java:115) 
    at org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4980) 
    at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5626) 
    at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232) 
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:160) 
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559) 
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549) 
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) 
    at java.util.concurrent.FutureTask.run(FutureTask.java:138) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) 
    at java.lang.Thread.run(Thread.java:695) 
Oct 29, 2014 4:30:44 PM org.apache.coyote.AbstractProtocol start 
INFO: Starting ProtocolHandler ["http-bio-8084"] 
Oct 29, 2014 4:30:44 PM org.apache.coyote.AbstractProtocol start 
INFO: Starting ProtocolHandler ["ajp-bio-8184"] 

任何幫助的工作是有幫助的。

回答

2

爲了解決您的問題,改變瓦片依賴於

<dependency> 
     <groupId>org.apache.tiles</groupId> 
     <artifactId>tiles-core</artifactId> 
     <version>${tiles.version}</version> 
     <exclusions> 
      <exclusion> 
       <artifactId>jcl-over-slf4j</artifactId> 
       <groupId>org.slf4j</groupId> 
      </exclusion> 
     </exclusions> 
    </dependency> 

,並添加新的依賴

<dependency> 
     <groupId>org.slf4j</groupId> 
     <artifactId>jcl-over-slf4j</artifactId> 
     <version>1.7.7</version> 
    </dependency> 

通常依賴問題很容易通過使用dependency:tree來解決,然而,這裏的竅門是jcl-over-slf4j在傳遞依賴中包含slf4j-api,但沒有明確的版本。 Maven依賴關係調解已將slf4j-api版本解析爲1.7.7,因此沒有明顯的版本衝突。你仍然錯過了一個錯誤的jcl-over-slf4j版本。這就是爲什麼排除是對依賴

+0

隨着這種變化,現在我所擁有的是'javax.servlet.ServletException:無法解決在servlet中名稱爲'dispatcher''錯誤的名稱爲'home'的視圖。瓷磚配置看起來很好,並且非常確定它是如何配置的。 – Thunder 2014-10-30 01:02:21

+0

它可能是一個單獨的帖子的單獨問題,我發佈的內容應該只解決您的依賴性問題 – 2014-10-30 07:15:48

+0

解決了依賴關係的問題。謝謝 :) – Thunder 2014-10-30 13:30:36

0

也有類似的問題,在JBoss部署的錯誤是:

Exception sending context initialized event to listener instance of class 2017-09-18 19:15:20,350 [] priority=ERROR app_name= thread=HDScanner location=[XXX] line=3470 Exception sending context destroyed event to listener instance of class org.springframework.web.context.ContextLoaderListener: java.lang.NoSuchMethodError: org.slf4j.spi.LocationAwareLogger.log(Lorg/slf4j/Marker;Ljava/lang/String;ILjava/lang/String;[Ljava/lang/Object;Ljava/lang/Throwable;)V 
    at org.apache.commons.logging.impl.SLF4JLocationAwareLog.warn(SLF4JLocationAwareLog.java:199) 

在我的情況下,這個問題是與SLF4J版本不匹配,由於新的依賴我addded到該項目。

因此,將排除項添加到新的依賴項,解決了問題。

  <exclusions> 
       <exclusion> 
        <groupId>org.slf4j</groupId> 
        <artifactId>slf4j-log4j12</artifactId> 
       </exclusion> 
       <exclusion> 
        <groupId>org.slf4j</groupId> 
        <artifactId>slf4j-api</artifactId> 
       </exclusion> 
       <exclusion> 
        <groupId>org.slf4j</groupId> 
        <artifactId>jcl-over-slf4j</artifactId> 
       </exclusion> 
      </exclusions> 
相關問題