来源http://www.jnan.org/archives/2010/12/cannot-find-the-declaration-of-element-beans.html
Spring配置文件xsi:schemaLocation无法解析导致启动失败的解决方案
今天向服务器部署一个console java app之后,启动时发现程序出现异常:
Exception in thread “main” org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line 10 in XML document from class path resource [app-config.xml] is invalid; nested exception is org.xml.sax.SAXParseException: cvc-elt.1: Cannot find the declaration of element ‘beans’.
然后去看看app-config.xml里的schema声明部分,是这样写的:
<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/beanshttp://www.springframework.org/schema/beans/spring-beans-3.0.xsdhttp://www.springframework.org/schema/contexthttp://www.springframework.org/schema/context/spring-context-3.0.xsd” >
很明显,有关’beans’的声明都放在http://www.springframework.org/schema/beans/spring-beans-3.0.xsd里面了。可能是网络原因,访问不倒导致解析app-config.xml失败,致使程序抛出异常。
打开spring-beans-3.0.1.RELEASE.jar一看,那个xsd文件就在org.springframework.beans.factory.xml包下面,这下子好办了,把xsd文件的引用全改为本地的就行了:
<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/beansclasspath:/org/springframework/beans/factory/xml/spring-beans-3.0.xsdhttp://www.springframework.org/schema/contextclasspath:/org/springframework/context/config/spring-context-3.0.xsd” >
相关推荐
这个错误提示表明XML解析器无法找到`<beans>`元素的定义,这是一个基本的Spring配置文件结构元素,用于包裹所有的bean定义。 Spring的配置文件遵循特定的命名空间和Schema定义,这些定义在`spring-beans.xsd`文件中...
- **原因**:Spring配置文件存在格式错误。 - **解决办法**: - 使用XML验证工具检查文件格式是否正确。 - 确认所有必需的依赖都已添加至项目中。 #### 14. java.lang.NoClassDefFoundError: org/apache/commons/...
本文将深入探讨一个典型的Spring配置文件,解析其中的关键配置项及其功能,帮助读者更好地理解如何利用Spring框架进行项目开发。 #### 一、Spring配置文件结构 配置文件通常使用XML格式来定义Bean以及它们之间的...
接下来,创建一个简单的Spring配置文件,例如`applicationContext.xml`。这个文件定义了Bean的声明和它们之间的依赖关系。例如: ```xml <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi=...
1. XML配置文件中拼写错误,导致无法找到匹配的元素定义。 2. `dubbo.xsd`文件没有正确导入到XML配置文件中,或者导入路径不正确。 3. 使用的Dubbo版本与`dubbo.xsd`版本不匹配,某些新引入的配置元素在旧版本的`...
有了这个XSD,Eclipse可以对Spring配置文件进行智能提示和错误检查,提高开发效率和代码质量。 结合这两个XSD文件,开发者可以在Eclipse环境下无缝集成Dubbo和Spring,实现服务的快速开发和部署。同时,这些约束...
Spring 是一个广泛使用的开源Java EE框架,它提供了一个分层架构,涵盖了Web层、Service层和DAO层的解决方案。Spring的核心特性包括控制反转(IOC)和面向切面编程(AOP),这两个特性极大地简化了Java应用的开发,...
- 在Spring配置文件中配置视图解析器、拦截器等。 - 定义控制器类,并使用注解来处理请求。 #### 六、Spring和JUnit整合完成测试 **6.1 单元测试** - 使用Spring Test框架来编写单元测试。 - 通常需要配置测试上...
这个错误通常意味着Spring无法找到预期的根元素`<beans>`,这是Spring配置文件的基础。本文将深入探讨这个问题的原因以及解决方案。 首先,`SAXParseException`是XML解析过程中抛出的异常,表明在解析XML文档时遇到...
这个错误通常发生在解析XML配置文件时,表明在同一行内发现了多个注解,这在XML规范中是不被允许的。Dubbo的配置文件通常是`dubbo.xml`,它用于定义服务提供者和服务消费者的相关配置,包括接口、实现类、协议、注册...
4. **创建 Spring 配置文件**: - 在 WEB-INF/spring/appServlet 目录下创建 servlet-context.xml 文件,并配置 Spring MVC: ```xml <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi=...
当Spring容器启动时,它会读取此配置文件并根据定义创建`ExampleBean`实例。 通过以上介绍,我们可以看到Spring框架的强大之处在于其灵活性和扩展性。无论是简单的Web应用还是复杂的企业级应用,Spring都能提供合适...
这三个框架各自解决不同的问题,但当它们组合在一起时,能够提供一套完整的Web应用解决方案。 - **Spring**:作为整个框架的核心,提供了依赖注入(DI)和面向切面编程(AOP)等功能,简化了Java应用的开发。 - **...
Spring允许开发者根据自身需求定义自己的标签,以便在配置文件中更方便地声明和管理组件。本篇文章将深入探讨Spring自定义标签的定义、解析以及相关源码分析。 首先,自定义标签的定义通常涉及到两个主要步骤: 1....
Spring提供了完整的轻量级开发解决方案,适用于任何Java应用。Spring的核心特性包括依赖注入(Dependency Injection, DI)、面向切面编程(Aspect-Oriented Programming, AOP)、数据访问/集成、事务管理等。 在...
为了能够正确处理由JasperReport生成的XML格式的报表,需要在Spring MVC的配置文件中加入XML视图解析器。示例代码如下: ```xml <bean class="org.springframework.web.servlet.view.XmlViewResolver"> ``` 其中`...
SpringMVC 是 Spring 框架的一个重要组成部分,它遵循了 Model-View-Controller(MVC)设计模式,为Web应用提供了简化开发的解决方案。SpringMVC 请求流程主要包括以下几个步骤: 1. 用户发起HTTP请求到达前端控制...
3. **配置CXF**:在Spring配置文件中配置CXF,包括服务端点地址、服务类等。 ```xml <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:...
通过本文的分析与解决方案,我们可以更好地理解如何解决EL表达式未被解析的问题,避免类似错误的发生。同时,对于新手开发者来说,熟悉Maven的基本用法以及Web规范的不同版本之间的差异也是十分必要的。
3. **配置`spring-mvc.xml`**:这是SpringMVC的核心配置文件,用于定义视图解析器、消息源等组件。 ```xml <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi=...