Я пытаюсь извлечь объект из метода процесса в ответе Camel.
Однако, как только я получил пустой ответ в следующем коде:
from("timer://simpleTimer?repeatCount=1").routeId("myroute")
.setHeader("client_id", constant("abc"))
.setHeader("client_secret",constant("def"))
.setHeader(Exchange.HTTP_METHOD, constant("POST"))
.setHeader(Exchange.CONTENT_TYPE, constant("application/json"))
.setHeader(Exchange.HTTP_URI, constant(url))
.marshal().json(JsonLibrary.Gson)
.log("trying to send message")
.to(url)
.convertBodyTo(String.class)
.process(new Processor(){
@Override
public void process(Exchange exchange) throws Exception {
final Message message = exchange.getIn();
int responseCode = message.getHeader(Exchange.HTTP_RESPONSE_CODE, Integer.class);
final String responseBody = message.getBody(String.class);
System.out.println("in final block of process:" +
responseCode + ",Body class name=" + responseBody.getClass()+
"body="+responseBody);
}
);
Здесь тело не является Это странно, так как тело печатается
Мне нужно обратно представление JSON, а также хочу сохранить его в объекте, чтобы мы могли вернуть его при возврате этого объекта из этого метода.
Чего-то не хватает? Что нужно добавить, чтобы соответствовать требованию?