Рекомендации по размещению XML-схемы - PullRequest
4 голосов
/ 25 января 2011

Увидев еще несколько загадочных сообщений об ошибках, я понимаю, что они могут быть связаны с поддельными URI, присутствующими здесь:

<?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:jaxws="http://cxf.apache.org/jaxws"
       xmlns:cxf="http://activemq.apache.org/camel/schema/cxfEndpoint"    
       xsi:schemaLocation="
        http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
        http://activemq.apache.org/camel/schema/spring
        http://activemq.apache.org/camel/schema/spring/camel-spring.xsd
        http://activemq.apache.org/camel/schema/cxfEndpoint
        http://activemq.apache.org/camel/schema/cxf/cxfEndpoint.xsd
        http://cxf.apache.org/jaxws 
        http://cxf.apache.org/schemas/jaxws.xsd
        ">

Полезно ли обращаться к сетевым схемам?

Из вышеперечисленного, например:

http://www.springframework.org/schema/beans/spring-beans-2.0.xsd

отлично работает, что очень мило и хорошо, когда у вас нет проблем с Интернетом, когда работает springframework.org и т. Д., Но, кроме того, из вышеизложенного также есть:

http://activemq.apache.org/camel/schema/cxf/cxfEndpoint.xsd

, что дает:

"Oops! This link appears to be broken"

Упс, действительно.

Какова наилучшая практика в отношении URI, относящихся к схеме в проекте?

Бонусный вопрос: почему Eclipse не жалуется в реальном времени на неработающие ссылки? (IntelliJ IDEA делает это правильно!?)

Ответы [ 2 ]

3 голосов
/ 27 января 2011

Spring не загружает схемы по сети при запуске контейнера - существует механизм для встраивания схем в файлы jar Spring , и Spring использует эти встроенные схемы для проверкиXML.Это применимо и для всех пользовательских пространств имен.

Eclipse может жаловаться, потому что Eclipse загружает схемы на основе URI схемы, который может не размещаться в сети, как в вашем случае, есть способ кэшированияпользовательские схемы в настройках Eclipse.

1 голос
/ 27 января 2011

Посмотрите на каталог Resolver: http://xml.apache.org/commons/components/apidocs/resolver/org/apache/xml/resolver/tools/CatalogResolver.html

Может быть, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...