2015-04-17 50 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后 - 问题消失。

相关问题