Apache Camel — открытый кроссплатформенный java-фреймворк, который позволяет проводить интеграцию приложений в простой и понятной форме. Идеологически основан на Шаблонах Интеграции Корпоративных Приложений.
Особенности:
- Гибкая маршрутизация сообщений
- Более 70-ти различных компонентов для доступа к данным
- Не навязывается канонический формат данных на сообщения
- Маршруты описываются на Java DSL, XML DSL, Scala DSL
- Использование POJO-объектов возможно для любых целей, например для трансформации сообщений
- Минимальные требования к конфигурации
- Автоматическая конвертация сообщений между различными форматами
- Легко может быть встроен в существующие приложения
- В составе идут инструменты для тестирования готового интеграционного решения
- Готов к размещению в OSGi-окружении
Пример маршрута, записанного с помощью Java DSL
from("file:src/data?noop=true").
choice().
when(xpath("/person/city = 'London'")).to("file:target/messages/uk").
otherwise().to("file:target/messages/others");
Примечания
Ссылки