Как использовать динамическое выражение в обогащении верблюдов - PullRequest
0 голосов
/ 12 ноября 2018

У меня есть сценарий ниже, используя pollEnrich и Aggregator.

 private static final String SOURCE_FILE_COMPONENT = "file:%s?fileName=$simple{exchangeProperty.fileName}.%s";

  from("direct:signatureVerificationRoute")
         .pollEnrich(String.format(SOURCE_FILE_COMPONENT, sourceLocation,signatureAlgorithm), new Aggregator())
         .to("direct:test");

Где в приведенном выше коде, я создал динамический URI для pollEnrich, который не работает.

1 Ответ

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

Вы можете использовать перегруженный pollEnrich, который принимает выражение. Хотя вам нужно предоставить тайм-аут и стратегию агрегации в качестве ссылки на bean-компонент, он может не подойти. Если вы указали null в качестве стратегии агрегации, ссылка просто использует последние сообщения, поэтому содержимое файла.

from("direct:signatureVerificationRoute")
        .pollEnrich(simple(String.format(SOURCE_FILE_COMPONENT, sourceLocation,signatureAlgorithm)), 2000, null, false)
        .to("direct:test");
...