Spring XSD的访问错误

问题描述

Spring XDS已定义并随Spring jar一起提供!例如,spring-context.jar包含spring- context-3.0.xsd。(请参阅spring-context.jar/meta-inf/spring.schema)

因此,请检查项目中是否有这个jar。

因此,您所谓的“远程”并不是很遥远!而且我从未见过您所说的“本地访问”,因此我将尝试检查为什么“远程”(不是远程)对所有xsds(但spring- context)有效。

如果它是一个桌面程序,并且您使用包含所有其他爆炸式jar的单个jar,则需要注意将单个内容spring.handlersspring.schames来自不同spring- xxx.jar的文件内容合并在(两个)“饥饿”文件。最后,这(两个)文件包含所有架构名称和处理程序名称

解决方法

我正在尝试运行我的前雇员在工作中留下的系统,但是我在执行该任务时遇到了问题。

如果XSD通过远程访问运行:

<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:aop="http://www.springframework.org/schema/aop"
    xmlns:context="http://www.springframework.org/schema/context"
    xmlns:tx="http://www.springframework.org/schema/tx"
    xsi:schemaLocation="http://www.springframework.org/schema/beans 
                           http://www.springframework.org/schema/beans/spring-beans.xsd
                           http://www.springframework.org/schema/context  
                           http://www.springframework.org/schema/context/spring-context-3.0.xsd
                           http://www.springframework.org/schema/aop 
                           http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
                           http://www.springframework.org/schema/tx
                           http://www.springframework.org/schema/tx/spring-tx.xsd">

它给出了一个未发现的异常:

Failed to read schema document 'http://www.springframework.org/schema/context/spring-context-3.0.xsd',because 1) could not find the document; 2) the document could not be read; 3) the root element of the document is not <xsd:schema>.

如果XSD通过本地访问运行:

<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:aop="http://www.springframework.org/schema/aop"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:tx="http://www.springframework.org/schema/tx"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
           classpath:org/springframework/beans/factory/xml/spring-beans-3.0.xsd
           http://www.springframework.org/schema/tx
           classpath:org/springframework/transaction/config/spring-tx-3.0.xsd
           http://www.springframework.org/schema/context  
           classpath:org/springframework/context/config/spring-context-3.0.xsd
           http://www.springframework.org/schema/tool
           classpath:org/springframework/beans/factory/xml/spring-tool-3.0.xsd">

它给出了以下异常:

C:\Users\claudiomazur>java -jar c:\temp\fin\c.jar  
0 [AWT-EventQueue-0] INFO support.ClassPathXmlApplicationContext  - Refreshing org.springframework.context.support.ClassPathXmlApplicationContext@4fa52fdf: startup date [Thu Sep 06  
11:22:59 BRT 2012]; root of context hierarchy  
45 [AWT-EventQueue-0] INFO xml.XmlBeanDefinitionReader  - Loading XML bean definitions from class path resource [context.xml]  
Exception in thread "AWT-EventQueue-0" org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Unable to locate Spring NamespaceHandler for  
XML schema namespace [http://www.springframework.org/schema/context]  
Offending resource: class path resource [context.xml]

        at org.springframework.beans.factory.parsing.FailFastProblemReporter.error(FailFastProblemReporter.java:68)

解决这个问题的一些想法?

大拥抱!