springmvc mvc:exclude-mapping错误提示

行是知之始,知是行之成。这篇文章主要讲述springmvc mvc:exclude-mapping错误提示相关的知识,希望能为你提供帮助。
今天搭建一个java web项目时,增加了一个登录的拦截器,主要功能就是未登录的用户无法访问系统的任何页面。
先说明下我的web项目springmvc的版本以及刚开始配置的拦截器:
springmvc 4.3.7

1 < !-- 拦截器 --> 2< mvc:interceptors> 3< !-- 登录拦截 --> 4< mvc:interceptor> 5< mvc:exclude-mapping path="/login"/> 6< mvc:exclude-mapping path="/"/> 7< mvc:exclude-mapping path="/dologin"/> 8< mvc:exclude-mapping path="/loginout"/> 9< mvc:mapping path="/**"/> 10< bean class="org.yi.lc.web.common.interceptor.LoginInterceptor"/> 11< /mvc:interceptor> 12< /mvc:interceptors>

 
但是在spring-servlet.xml配置这个拦截器的时候,工具一直报错,运行的时候出现如下错误:
1 org.xml.sax.SAXParseException; lineNumber: 27; columnNumber: 49; cvc-complex-type.2.4.a: 发现了以元素 ‘mvc:exclude-mapping‘ 开头的无效内容。应以 ‘{"http://www.springframework.org/schema/mvc":mapping}‘ 之一开头。 2at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:203) 3at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(ErrorHandlerWrapper.java:134) 4at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:396) 5at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:327) 6at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:284) 7at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator$XSIErrorReporter.reportError(XMLSchemaValidator.java:452) 8at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.reportSchemaError(XMLSchemaValidator.java:3230) 9at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.handleStartElement(XMLSchemaValidator.java:1790) 10at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.emptyElement(XMLSchemaValidator.java:760) 11at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:351)

这个错误提示刚开始没看懂,以为是不支持mvc:exclude-mapping,然后百度原因,各种解法,比如替换jar包之类的。
从对应的schema中http://www.springframework.org/schema/mvc/spring-mvc-4.3.xsd查看,发现是有这个标签的,这就说明我这个版本显然是支持的,那么这个报错事什么意思呢?
后面注意到错误提示中“开头”两个字,如果不以mvc:exclude-mapping开头是不是就可以了,尝试了一下,果然可以!
附上正确顺序的配置:
< !-- 拦截器 --> < mvc:interceptors> < !-- 登录拦截 --> < mvc:interceptor> < mvc:mapping path="/**"/> < mvc:exclude-mapping path="/login"/> < mvc:exclude-mapping path="/"/> < mvc:exclude-mapping path="/dologin"/> < mvc:exclude-mapping path="/loginout"/> < bean class="org.yi.lc.web.common.interceptor.LoginInterceptor"/> < /mvc:interceptor> < /mvc:interceptors>

【springmvc mvc:exclude-mapping错误提示】 

    推荐阅读