2015-04-17 47 views
1

我遇到了奇怪的情況。 當我通過以下配置通過intellij想法運行我的項目 - clean install tomcat7:run -e - 一切進程都成功完成。錯誤「匹配的通配符是嚴格的,但沒有聲明可以找到元素的上下文:annotation-config'」通過tomcat7

但是,當我.war文件手動複製到tomcat7目錄並啓動服務器我在tomcat的日誌得到一個錯誤:

嚴重:異常發送上下文初始化事件監聽器類 組織的 實例。 springframework.web.context.ContextLoaderListener org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: 來自ServletContext的XML文檔中的第8行資源 [/WEB-INF/spring/spring.xml]無效;嵌套的異常是 org.xml.sax.SAXParseException; lineNumber:8; columnNumber:33; cvc-complex-type.2.4.c:匹配的通配符是嚴格的,但是對於元素'context:annotation-config',沒有找到 聲明。

這裏是我的spring.xml:

<?xml version="1.0" encoding="UTF-8"?> 
<beans xmlns="http://www.springframework.org/schema/beans" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xmlns:context="http://www.springframework.org/schema/context" 
     xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.1.xsd 
          http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.1.xsd"> 

    <context:annotation-config/> 
.... 

我已經找到關於命名空間的一些解決方案,但他們沒有爲我工作。

回答

0

好像你沒有spring-context-4.1.x.RELEASE.jar在你的戰WEB-INF/lib目錄下。

+0

不,我在我的war WEB-INF/lib目錄中有這樣的庫 –

+0

@ivan_ochc嘗試使用ApplicationContextInitializer來禁用驗證,以查看上下文文件是否被正確解析(使用方法ctx#setValidating) –

0

我修復了這個問題。 我想,這個問題是在target文件夾中的兌現數據。 執行以下命令mvn clean package後 - 問題消失。

相關問題