有没有办法用副本替换交换?我在一个过程中得到了一个交换副本,我需要用副本替换/覆盖现有的交换。场景是SOAP请求存储在交换体中,正文类型是自定义对象。现在,当请求进入服务器时,响应将存储在交换体中,并且正文类型将更改为输入流。如果响应不是我需要的,那么我需要用交换副本替换交换并重新发送请求。
摘录过程(...)
Exchange copy = null;
copy = ExchangeHelper.createCopy(exchange, true);
有setBody,但没有像setExchange或replaceExchangeWithCopy。
答案 0 :(得分:0)
为了解决你在Camel的情况,有两种类型的身体,即
exchange.getIn.setBody
exchange.getOut.setBody
这意味着您可以将您的请求存储在 IN body 中,并将响应存储在 OUT body 中,因此在检查OUT体内的响应是否正确后,您可以再次使用您的IN正文内容。
确保您的Exchange pattern
INOUT 。