2014-11-09 3 views
1

Я хочу загрузить RSS-ленты, используя Spring XD для хранения в Hadoop. Я использую следующий пример: https://github.com/spring-projects/spring-xd/wiki/Creating-a-Source-Module Я создал поэтому файл feed.xml в каталоге [/usr/local/Cellar/springxd/1.0.0.M7/libexec/xd/modules/source] , а позже и в [ /usr/local/Cellar/springxd/1.0.0.M7/libexec/xd/modules/source/feed/config/feed.xml] , скопировав пример файла feed.xml примера github.Как реализовать RSS-канал в качестве источника в Spring XD

В примере github говорится, что «В этом разделе описывается настройка локального проекта, содержащего некоторый код для тестирования вне контейнера XD. Этот шаг можно пропустить, если вы хотите протестировать модуль, развернув его в Spring XD».

Я хочу развернуть модуль весной XD с помощью xd-singlenode и xd-shell. Таким образом, внутри XD-оболочки Я попытался создать поток с помощью DSL-сценариев, таких как

stream create -- name bbcfeed --definition "feed | log" --deploy 

В результате я получаю следующее сообщение об ошибке: «Сбой команды org.springframework.xd.rest.client.impl.SpringXDException : Проблема с конфигурацией: невозможно найти пространство имен SpringNamespaceHandler для пространства XML-схем. [http://www.springframework.org/schema/integration/feed]Offending ресурс: URL [файл: /usr/local/Cellar/springxd/1.0.0.M7/libexec/xd/modules/source/feed/config/feed. xml] "

Я проверил наличие схемы springdramework.org. Они существуют.

Что я делаю неправильно?

ответ

0

Я проверил наличие схемы springdramework.org. Они существуют.

Я предполагаю, что вы имеете в виду в Интернете - банка, содержащая схему (и классы), должна быть в пути к классам. Вам нужно добавить банку spring-integration-feed и ее зависимостям в каталог `$ {XD_HOME}/lib, как описано в документации. Вы также можете скопировать их в каталог lib модуля.

Версия spring-integration-feed должна соответствовать версии другого spring-integration-* банок.

Вы также используете старую предварительную веху; Я предлагаю вам перейти на последнюю версию: http://projects.spring.io/spring-xd/ (1.0.1.RELEASE на момент написания).

+0

Спасибо. Я обновился до последней версии. Кроме того, я получил требуемый файл spring-integration-feed-4.0.2.RELEASE.jar из репозитория Maven и сохранил его в папке lib. Оно работает. Одно замечание: некоторые сайты публикуют поток RSS с URL-адресом, начинающимся с «feed: //». В DSL необходимо заменить эту часть URL-адресом «http: //». Идентификатор протокола «feed: //» не работает. – Luc

+0

Это, по-видимому, [ограничение Java и/или библиотеки Рима] (http://stackoverflow.com/questions/3047421/question-on-using-informa-rss-library); если вам нравится, вы можете открыть [Улучшение JIRA-проблемы] (https://jira.spring.io/browse/INT), и мы можем добавить возможность исправить схему URI, если это необходимо. –

+0

Ха-ха-ха, ты шутишь, надеюсь. Но спасибо за приглашение. – Luc

Смежные вопросы