Типы данных Apache Camel между компонентами - PullRequest
0 голосов
/ 22 мая 2018

Я не смог найти никакой документации по этому вопросу на веб-сайте Apache Camel.


Как и какие типы поддерживаются при обмене данными между компонентами в Apache Camel .Я хотел бы понять магию, которая происходит внутри него.Поскольку документ просто говорит, что вы потребляете данные из файловой системы или FTP, сообщение из JMS, данные SQL и множество других возможностей и отправляете их производителю, который волшебным образом, кажется, что-то принимает и выводит множество возможностей.

  • Они написали конвертеры для всех для всех типов в фреймворке?

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

  • Нужно ли мне писать конвертеры для всех возможных типов, которыеможет прийти?

Я видел, что верблюд работает с классом Exchange и использует его для отправки сообщений между компонентами.На мой взгляд, довольно неопределенно, как компоненты работают с различными возможными типами сообщений.

1 Ответ

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

Я рекомендую вам взглянуть на книгу Клауса Ибсена и Джонатана Ансти «Верблюд в действии».У меня были такие вопросы.Они там отлично ответили.Глава 11.3 поможет вам создать собственный компонент.Кроме того, вы можете проверить эту ссылку github для начала.В нем есть пример того, как создать свой собственный компонент.

Верблюд может знать, какие типы вы передаете в теле сообщения, поэтому он предлагает вам несколько способов преобразования полезной нагрузки, начиная с создания процессора для преобразования,к использованию Java DSL transform метода, который принимает Expression.

Просто будьте готовы обработать случай, когда неизвестный объект потребляется.Не беспокойтесь обо всех входящих объектах.Все зависит от того, как реализованы потребители.

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