Интеграция Apache Camel и Drools Fusion

Кто-нибудь пробовал интегрировать Apache Camel с Drools Fusion или просто с Drools.

Ниже приведен мой вариант использования.

  • Получить данные из внешнего сервиса с помощью REST.
  • Отфильтруйте данные (используя правила, определенные в Drools.)
  • Данные из внешней службы также могут быть потоком информации (например, лента Tweeter, местоположение пользователя в реальном времени).

Любая помощь или указатели будут оценены.

Спасибо.


person Soumya Simanta    schedule 07.03.2012    source источник


Ответы (1)


Drools имеет верблюжий компонент. Его использование не сильно отличается от использования любого компонента верблюда.

источник: https://github.com/droolsjbpm/droolsjbpm-integration/tree/master/drools-camel

двоичный файл (в комплекте интеграции с droolsjbpm): http://www.jboss.org/drools/downloads.html

Единственное, о чем нужно «знать», это то, что Drools может обрабатывать сообщения верблюда как:

  1. команды
  2. обычные факты
  3. как есть объекты и перенаправить затем

Некоторые статьи:

http://blog.athico.com/search?q=camel

Документация, к сожалению, описывает только вариант использования «команда» (1):

http://docs.jboss.org/drools/release/5.4.0.Beta2/droolsjbpm-integration-docs/html/ch01.html

Некоторые тестовые случаи, которые вы можете использовать в качестве примеров для вариантов использования (2) и (3) выше:

https://github.com/droolsjbpm/droolsjbpm-integration/tree/master/drools-camel/src/test/java/org/drools/camel/component

Надеюсь это поможет.

person Edson Tirelli    schedule 07.03.2012
comment
Спасибо. Для моего варианта использования я хочу, чтобы слюни обрабатывали сообщения о верблюдах как факты и применяли мои правила фильтрации (аналогично примеру Twitter CBR). Возможно ли это без серьезных изменений? - person Soumya Simanta; 07.03.2012
comment
Является ли JsonQueryTest.java правильной реализацией для варианта использования № 2? - person Soumya Simanta; 07.03.2012
comment
Вероятно, это тот пример, который вам нужен: github.com/droolsjbpm/droolsjbpm-integration/blob/master/ . По сути, вы хотите сослаться на конечную точку drools с помощью действия insertBody и, необязательно, имени точки входа, которую вы хотите использовать для своего потока. Например: drools://node/ksession1?action=insertBody&entryPoint=ep1 - person Edson Tirelli; 07.03.2012
comment
Примеры Github относятся к версии 5. github.com/kiegroup/droolsjbpm-integration/blob/5.6.x/. Основная ветка (7.x) существенно отличается от github.com/kiegroup/droolsjbpm-integration/tree/master/ - person Jeremy Gosling; 10.04.2017