首页 > 解决方案 > 在 Apache Camel 中将对象分解为 POJO 的最佳方法

问题描述

我正在尝试从 Camel 响应中的 process 方法中检索一个对象。

但是,一旦我在以下代码中得到空响应:

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 表示,并且还想将它存储在一个对象中,以便我们可以在从该方法返回 thi 对象时返回它。

有什么遗漏吗?应该添加什么来满足要求?

标签: apache-camelcamel-http

解决方案


推荐阅读