Верблюд - тело становится пустым после регистрации - PullRequest
0 голосов
/ 05 февраля 2019

Похоже, странная проблема или документы отсутствуют

Дело 1

from("direct:ROUTE1").to("someAPI").to("direct:ROUTE2");
from("direct:ROUTE2").log("${body}");  // BODY is printing

Дело 2

from("direct:ROUTE1").to("someAPI").to("direct:ROUTE2").log("${body}");
from("direct:ROUTE2").log("${body}");  // BODY is empty

Добавляет ли лог очистить тело обмена ??

1 Ответ

0 голосов
/ 07 февраля 2019

Как предложили @Spara и @Claus, чтобы сэкономить на том, как включить потоковое кэширование.

Ниже приведен пример кода:

Использование Java DSL для одиночного маршрута

from("direct:ROUTER1")
    .streamCaching()
    .to("direct:ROUTER2");

Использование Spring DSL для одиночного маршрута

<route streamCache="true">
   <from uri="direct:ROUTER1"/>
   <to uri="direct:ROUTER2"/>
</route>

Для глобального и для области действия маршрута с использованием JAVA DSL

   context.setStreamCache(true);

      from("direct:ROUTER1")
         .to("direct:ROUTER2");

Для глобальной и маршрутной области с использованием Spring DSL

<route streamCache="true">
   <from uri="direct:ROUTER1"/>
   <to uri="direct:ROUTER2"/>
</route>

Примечание: Кэширование Camel Stream Почему потоковое кеширование

...