Лучший способ разоблачить объект в POJO в Apache Camel - PullRequest
0 голосов
/ 05 марта 2020

Я пытаюсь извлечь объект из метода процесса в ответе 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, а также хочу сохранить его в объекте, чтобы мы могли вернуть его при возврате этого объекта из этого метода.

Чего-то не хватает? Что нужно добавить, чтобы соответствовать требованию?

...