XML-сообщение из конвейера UNIX через потоковый компонент - PullRequest
0 голосов
/ 11 мая 2018

У меня есть процесс, который выводит несколько документов XML в именованный канал UNIX в непрерывном потоке. Я хотел бы иметь возможность взять этот именованный канал и создать несколько XML-сообщений в «от» части верблюжьего маршрута.

Компонент Stream казался естественным выбором для использования ввода именованного канала, но каждая строка текста XML преобразуется в сообщение, а не весь документ XML, являющийся сообщением.

Я знаю, что мне здесь не хватает чего-то фундаментального, но мой google-foo вышел пустым ...

Любые указатели о том, как этого добиться, очень ценятся.

Спасибо, Dave

1 Ответ

0 голосов
/ 13 мая 2018

Так что еще RTFM'ing и у меня есть решение.

from("file:/tmp?fileName=tshark-pipe&noop=true")
    .split().tokenizeXML("packet").streaming()
    .log("body: ${body}");

Я нашел вышеупомянутое решение на странице документации EIP Camel "Splitter".

...