使用SpringMVC的过程中需要访问静态文件,即在spring-servlet.xml文件中添加了

  1. <mvc:default-servlet-handler />

标签,以开启SpringMVC对静态文件的拦截处理方法

重启Tomcat,出现如下报错

  1. 2016-05-06 03:18:47 ERROR [main] org.springframework.web.servlet.DispatcherServlet - Context initialization failed
  2. org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line 18 in XML document from ServletContext resource [/WEB-INF/classes/config/spring/spring-servlet.xml] is invalid; nested exception is org.xml.sax.SAXParseException: cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration can be found for element 'mvc:default-servlet-handler'.
  3. at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:399)
  4. at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:336)
  5. at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:304)
  6. at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:181)
  7. at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:217)
  8. at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:188)
  9. at org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:125)
  10. at org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:94)
  11. at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:129)
  12. at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:537)
  13. at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:452)
  14. at org.springframework.web.servlet.FrameworkServlet.configureAndRefreshWebApplicationContext(FrameworkServlet.java:663)
  15. at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:629)
  16. at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:677)
  17. at org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:548)
  18. at org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:489)
  19. at org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:136)
  20. at javax.servlet.GenericServlet.init(GenericServlet.java:212)
  21. at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1213)
  22. at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1026)
  23. at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4421)
  24. at org.apache.catalina.core.StandardContext.start(StandardContext.java:4734)
  25. at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:799)
  26. at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:779)
  27. at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:601)
  28. at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1079)
  29. at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:1002)
  30. at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:506)
  31. at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1317)
  32. at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:324)
  33. at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)
  34. at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1065)
  35. at org.apache.catalina.core.StandardHost.start(StandardHost.java:840)
  36. at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1057)
  37. at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)
  38. at org.apache.catalina.core.StandardService.start(StandardService.java:525)
  39. at org.apache.catalina.core.StandardServer.start(StandardServer.java:754)
  40. at org.apache.catalina.startup.Catalina.start(Catalina.java:595)
  41. at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  42. at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  43. at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  44. at java.lang.reflect.Method.invoke(Method.java:597)
  45. at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
  46. at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
  47. Caused by: org.xml.sax.SAXParseException: cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration can be found for element 'mvc:default-servlet-handler'.
  48. at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source)
  49. at org.apache.xerces.util.ErrorHandlerWrapper.error(Unknown Source)
  50. at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
  51. at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
  52. at org.apache.xerces.impl.xs.XMLSchemaValidator$XSIErrorReporter.reportError(Unknown Source)
  53. at org.apache.xerces.impl.xs.XMLSchemaValidator.reportSchemaError(Unknown Source)
  54. at org.apache.xerces.impl.xs.XMLSchemaValidator.handleStartElement(Unknown Source)
  55. at org.apache.xerces.impl.xs.XMLSchemaValidator.emptyElement(Unknown Source)
  56. at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)
  57. at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
  58. at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
  59. at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
  60. at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
  61. at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
  62. at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
  63. at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)
  64. at org.springframework.beans.factory.xml.DefaultDocumentLoader.loadDocument(DefaultDocumentLoader.java:76)
  65. at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadDocument(XmlBeanDefinitionReader.java:429)
  66. at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:391)
  67. ... 43 more

解决方法:

在 spring-servlet.xml 文件的 beans 标签的 xsi:schemaLocation 中加入 http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd

spring-servlet.xml 示例:

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <beans xmlns="http://www.springframework.org/schema/beans"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xmlns:util="http://www.springframework.org/schema/util"
  5. xmlns:p="http://www.springframework.org/schema/p"
  6. xmlns:aop="http://www.springframework.org/schema/aop"
  7. xmlns:tx="http://www.springframework.org/schema/tx"
  8. xmlns:mvc="http://www.springframework.org/schema/mvc"
  9. xmlns:context="http://www.springframework.org/schema/context"
  10. xsi:schemaLocation="
  11. http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
  12. http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.0.xsd
  13. http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
  14. http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
  15. http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd
  16. http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd">
  17. </beans>

  

SpringMVC org.xml.sax.SAXParseException: cvc-complex-type.2.4.c 报错处理方式的更多相关文章

  1. org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1; 前言中不允许有内容。

    二月 25, 2016 9:24:24 下午 org.apache.tomcat.util.digester.SetPropertiesRule begin 警告: [SetPropertiesRul ...

  2. Caused by: org.xml.sax.SAXParseException; lineNumber: 28; columnNumber: 81;

    1.错误描述 严重: Exception sending context initialized event to listener instance of class org.springframe ...

  3. Cause: org.xml.sax.SAXParseException; lineNumber: 45; columnNumber: 62; 元素内容必须由格式正确的字符数据或标记组成。

    三月 09, 2018 12:13:39 下午 org.apache.catalina.core.StandardContext listenerStart严重: Exception sending ...

  4. springboot thymeleaf org.xml.sax.SAXParseException错误

    SpringBoot越来越受欢迎,而官方推荐的模板是thymeleaf ,但是其语法太过严格,使用过程中一不留心就会出现org.xml.sax.SAXParseException错误 其中主要是下面这 ...

  5. nested exception is org.xml.sax.SAXParseException; lineNumber: 8; columnNumber: 56; cvc-complex-type.2.4.c通配符的匹配很全面, 但无法找到元素 'dubbo:application' 的声明

    严重: Exception sending context initialized event to listener instance of class org.springframework.we ...

  6. java读取xml文件报“org.xml.sax.SAXParseException: Premature end of file” .

    背景:java读取xml文件,xml文件内容只有“<?xml version="1.0" encoding="UTF-8"?>”一行 java读取该 ...

  7. spring整合mybatis错误:Caused by: org.xml.sax.SAXParseException; lineNumber: 5; columnNumber: 62; 文档根元素 "mapper" 必须匹配 DOCTYPE 根 "configuration"。

    运行环境:jdk1.7.0_17+tomcat 7 + spring:3.2.0 +mybatis:3.2.7+ eclipse 错误:Caused by: org.xml.sax.SAXParseE ...

  8. org.xml.sax.SAXParseException; lineNumber: 2; columnNumber: 6; 不允许有匹配 "[xX][mM][lL]" 的处理指令目标。

      Exception in thread "main" org.apache.ibatis.exceptions.PersistenceException: ### Error ...

  9. Caused by: org.xml.sax.SAXParseException; lineNumber: 4; columnNumber: 49; 前言中不允许有内容。

    今天刚开始学习mybatis时,自己去尝试使用mybatis链接数据库,操作数据局时,报了一个下面的错误 Caused by: org.xml.sax.SAXParseException; lineN ...

随机推荐

  1. 【无私分享:ASP.NET CORE 项目实战(第三章)】EntityFramework下领域驱动设计的应用

    目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 在我们 [无私分享:从入门到精通ASP.NET MVC] 系列中,我们其实也是有DDD思想的,但是没有完全的去实现,因为并不是 ...

  2. Python时间戳和日期的相互转换

    Python时间戳和日期的相互转换 (2014-03-17 11:24:35) 转载▼   分类: Python 当前时间戳:time.time() 当前日期:time.ctime() 1.Pytho ...

  3. macOS 升级到了10.12.1

    除了明面上的一些更新,但我感觉最重要的是触摸板的行为特征又还原了.

  4. ABP集合贴

    thead>tr>th,.table>tbody>tr>th,.table>tfoot>tr>th,.table>thead>tr>t ...

  5. Node节点

    1.Node:节点元素节点->HTML标签文本节点->文字 但是在标准浏览器(除了IE6~8)中会把空格和换行都当做文本节点来处理注释节点->注释document2.节点的特征元素节 ...

  6. IOS 杂笔-11(实现在外部无法改变UIView的size)

    我想题目说的或许不是很清楚,那么现在我详细介绍一下这篇随笔内容. 在外部无法改变UIVIew控件的size. 这里说是UIView,但是事实上,是大多数控件而绝非仅UIView. 想要实现在外部无法改 ...

  7. Hibernate 系列 06 - 对象在JVM中的生命周期

    引导目录: Hibernate 系列教程 目录 Java对象通过new命令进行创建,Java虚拟机(Java Virtual Machine,JVM)会为新的Java对象在内存中开辟一个新空间以存放次 ...

  8. Spark——SparkContext简单分析

    本篇文章就要根据源码分析SparkContext所做的一些事情,用过Spark的开发者都知道SparkContext是编写Spark程序用到的第一个类,足以说明SparkContext的重要性:这里先 ...

  9. ubuntu kylin 14.04安装搜狗输入法

    1.卸载原有的输入法,fcitx或ibus.如卸载fcitx: sudo apt-get remove fcitx*(如不需保留配置文件用purge) sudo apt-get autoremove( ...

  10. x86开启 HUGEPAGES

    HugePage,就是指的大页内存管理方式,在操作系统Linux环境中,内存是以页Page的方式进行分配,默认大小为4K,HugePage是传统4K Page的替代方案.顾名思义,是用HugePage ...