Как извлечь список XPath в верблюда - PullRequest
0 голосов
/ 29 ноября 2018

Мое требование следующее:

  1. У меня есть файл свойств, который имеет следующие значения: /message/header/messagetype ='DATA'

  2. Итак, XPathsключи и значения - это даты, которые я хочу проверить в Camel во время выполнения

Я читаю очередь ActiveMQ, которая возвращает мне сообщение XML.Теперь во время выполнения мне нужно проверить соответствующие XPath из файла свойств и проверить соответствующие значения в XML-сообщении, которое я получаю из очереди.Может быть любое количество проверок XPath, определенных в файле свойств.Это определяется потребностями бизнеса, и код должен заботиться об этом.

Ответы [ 2 ]

0 голосов
/ 01 декабря 2018

Спасибо за помощь.Я выяснил, как это сделать, используя функциональность Predicate в Camel. Итак, я сейчас создаю несколько объектов Predicate на основе записей моего файла свойств и добавляю их в PredicateBuilder, как показано ниже: *

PredicateBuilder.and(p1,p2....pn);

Это возвращает мне объект Predicate, который я могу использовать, когда () из Camel.

например. choice(). when(predicateBuilder()).

0 голосов
/ 30 ноября 2018

Не существует стандартного способа чтения файла свойств и его «преобразования» в проверки XPath.Тем не менее, вы всегда можете использовать простой Java Bean и вызывать его с вашего маршрута Camel.Например, вот так:

from()
...
.bean(YourBean.class)
...

С этим вы можете использовать код Java в качестве «компонента» в вашем маршруте Camel.

Для получения более подробной информации см. Документацию Camel о Связывание бобов и компонент Бин .

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