由于输入结束没有要映射的内容 - 在Camel中

时间:2018-02-11 05:28:43

标签: apache-camel unmarshalling

我是使用Camel的新手。我得到预期的响应来自我点击的网址 - 我记录了。但是在收到消息后,我在解组它时会出现错误:

在传递尝试时:0捕获:com.fasterxml.json.databind.JsonMappingException:由于输入结束而没有要映射的内容

2 个答案:

答案 0 :(得分:0)

也许是因为流式传输 - 只能读取一次问题,而且由于你记录了它,它是空的。请参阅此常见问题解答:http://camel.apache.org/why-is-my-message-body-empty.html

答案 1 :(得分:0)

我如何解决此问题:

我在DefaultCamelContext类中自动连接了routeBuilder bean,并将流缓存设置为true。这会将流缓存全局设置为true。

@Autowired
DefaultCamelContext camelContext;

然后将流缓存设置为true:

 camelContext.setStreamCaching(true);

或者,您也可以将单个路由器的流缓存设置为true,如下所示:

from("jbi:service:http://myService.org")
    .streamCaching(true)
    .to("jbi:service:http://myOtherService.org");