1
我幾乎準備好在java中使用jms與駱駝的應用程序。彈出我們必須添加額外的信息交換/消息。可以說,那些額外的信息實際上是新的Java對象。添加我的新對象進行交換的最佳方式是什麼?Apache 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);
}
}
的問題是,我無法找到信息,如果我可以添加許多對象信息。 Message方法:setBody(Object body,Class type)表明它是可能的,但也有方法:getBody()表示只有一個主體類。
如果我不能這樣做,那麼最好的方法是什麼?我可以嘗試將我轉換的字符串和信息包裝到一個類中,並將該新類放入消息中,但它會導致在每個處理器中獲取String的方式發生改變。我想避免這種情況。