2014-02-07 70 views
1

片段從我的XML文件:春天。 「的schemaLocation ......必須有偶數的URI的」

<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:util="http://www.springframework.org/schema/util" 
     xmlns:context="http://www.springframework.org/schema/context" 

     xsi:schemaLocation="http://www.springframework.org/schema/beans 

      http://www.springframework.org/schema/beans/spring-beans-3.1.xsd 
      http://www.springframework.org/schema/util 
      http://www.springframework.org/schema/util/spring-util.xsd 
      http://www.springframework.org/schema/context/spring-context-3.1.xsd"> 

<!--   http://www.springframework.org/schema/aop --> 
<!--   http://www.springframework.org/schema/aop/spring-aop.xsd"> --> 

    <context:component-scan base-package="myPackage" /> 

執行後,我看到以下消息:

警告[WrapperSimpleAppMain] [XmlBeanDefinitionReader]忽略XML 驗證警告org.xml.sax.SAXParseException; lineNumber:14; columnNumber:80; SCHEMALOCATION:的schemaLocation值= 'http://www.springfr amework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
http://www.spri ngframework.org/schema/util
http://www.springframework.org/schema/util/spring-util.xsd
http://www.springfra mework.org/schema/context/spring-context-3.1.xsd' 必須有偶數個URI。 在com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:198)

如何正確解決這個問題?

回答

10

schemaLocation值的形式應爲你錯過

namespace-name schema-location [namespace-name schema-location] 

的,因此它應該是

http://www.springframework.org/schema/context 

http://www.springframework.org/schema/context/spring-context-3.1.xsd 

xsi:schemaLocation=" 
      http://www.springframework.org/schema/beans 
      http://www.springframework.org/schema/beans/spring-beans-3.1.xsd 
      http://www.springframework.org/schema/util 
      http://www.springframework.org/schema/util/spring-util-3.1.xsd 
      http://www.springframework.org/schema/context 
      http://www.springframework.org/schema/context/spring-context-3.1.xsd"> 

請注意,我已將util架構更改爲版本3.1。不要混合搭配。使用所有相同的版本。

+0

xmlns = .....和xsi:schemaLocation之間是否存在依賴關係? – gstackoverflow

+0

@gstackoverflow是的,你用'xmlns:some-namespace-name'聲明瞭一個名字空間。 'schemaLocation'用於指向模式所在的位置,以便XML解析器可以驗證文檔中的XML。 –

+0

我有4 - * xmlns:xsi xmlns:aop xmlns:util xmlns:context *在文件開頭和3(bean util context)結尾處。這是正常的嗎? – gstackoverflow

相關問題