Eclipse показывает следующие ошибки в моем Spring applicationContext.xml:
cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration can be found for element 'dwr:configuration'. myappservlet-servlet.xml MyApp/src/main/webapp/WEB-INF line 23 XML Problem
cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration can be found for element 'dwr:controller'. myappservlet-servlet.xml MyApp/src/main/webapp/WEB-INF line 21 XML Problem
cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration can be found for element 'dwr:remote'. myappservlet-servlet.xml MyApp/src/main/webapp/WEB-INF line 41 XML Problem
Когда я наводил указатель мыши на ошибку позиции, он также говорит:
- schema_reference.4: Failed to read schema document 'http://www.directwebremoting.org/
schema/spring-dwr-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: schema > . Когда я использую автозаполнение, набрав < dwr: Eclipse правильно показывает мне различные параметры, такие как < dwr: configuration > , < dwr: controller > и т.д. Как Eclipse может знать это без прочтения схемы?
Я использую много разных пространств имен без проблем; схема DWR является единственной, которая не разрешается. Вот объявление:
<?xml version="1.0" encoding="utf-8"?>
<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:dwr="http://www.directwebremoting.org/schema/spring-dwr"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-2.5.xsd
http://www.directwebremoting.org/schema/spring-dwr
http://www.directwebremoting.org/schema/spring-dwr-3.0.xsd"
default-autowire="byName">
У меня есть последний DWR 3.0.0.116.rc1 в моем пути к классам. Если я разорву банку DWR, я нахожу META-INF/ spring.handlers, содержащие:
http\://www.directwebremoting.org/schema/spring-dwr=org.directwebremoting.spring.DwrAnnotationNamespaceHandler
и META-INF/ spring.схемы, содержащие:
http\://www.directwebremoting.org/schema/spring-dwr-2.0.xsd=org/directwebremoting/spring/spring-dwr-2.0.xsd
http\://www.directwebremoting.org/schema/spring-dwr-3.0.xsd=org/directwebremoting/spring/spring-dwr-3.0.xsd
Ускорение двоеточия немного отбросило меня, но я предполагаю, что все правильно, иначе все DWR будут разбиты.
До того, как я захватил эту конкретную схему в реальном времени с сайта DWR, но я понял это, когда моя производственная система потерпела крах, потому что сайт DWR был опущен.