Не уверен, что я полностью понимаю ваш случай, но вот мои ответы на ваши вопросы:
1) Вы можете выбрать любое значение из ответа JSON с помощью JsonPath. Чтобы использовать его позже, вы, вероятно, захотите сохранить его в заголовке сообщения
.setHeader("myHeader", jsonpath("$.your.json.path"))
2) Извините, я не понимаю этого вопроса: -)
3) Да, вы можете сделайте столько .to()
или .toD()
, сколько захотите
Однако, если вы хотите вызывать службы REST и используете компонент REST Camel, вы можете воспользоваться встроенными шаблонами URI. Это означает, что, возможно, вам не нужно .toD()
Например,
.to("rest:get:hello/{myHeader}")
вставит значение, извлеченное из ответа JSON выше, потому что имя заполнителя ищется в сообщении Заголовки и, если они найдены, заменены значением соответствующего заголовка сообщения
.setHeader("myHeader", jsonpath("$.your.json.path")) // assume jsonpath result is "world"
.to("rest:get:hello/{myHeader}") // URI "hello/world" is called