我几乎已经准备好在java中使用jms和Camel的应用程序.弹出我们必须在交换/消息中添加其他信息.让我们说这些额外的信息实际上是新的java对象.添加新对象以进行交换的最佳方法是什么?
我有很多Camel处理器处理消息,如下所示:
public class MyProcessor implements Processor {
@Override
public void process(Exchange exchange) throws Exception {
String s = exchange.getIn().getBody(String.class);
s = magicalTransform(s);
exchange.getIn().setBody(s, String.class);
//Now I have to add object of some Info.cass:
Info info = new Info( new Date() );
//Can I add it like this? :
exchange.getIn().setBody(info, Info.class);
}
}
Run Code Online (Sandbox Code Playgroud)
问题是,如果我可以向Message添加许多对象,我找不到信息.Message方法:setBody(Object body,Class type)表明它是可能的,但是还有方法:getBody(),它只有一个body类.
如果我不能这样做,那么最好的方法是什么?我可以尝试将我转换的字符串和信息输入到一个类中,并将该新类放入消息中,但这将导致更改在每个处理器中获取字符串的方式.我想避免这种情况.
| 归档时间: |
|
| 查看次数: |
5620 次 |
| 最近记录: |