2017-10-11 69 views
0

我是新来的骆驼,我卡在一个似乎很简单的点。我有一个需要解组的2 xml在我的交换中,然后将相应的POJO传递给处理器。我想如果我可以解组一个XML,将其设置为一个交换属性,并重复相同的另一个XML。最后在处理器中,我将检索属性并可以在处理器中执行所需的逻辑。 我能够成功地取消xml的编组,并且在exchange.in.body中获得最后一个POJO。但任何人都可以告诉我什么是正确的方式来设置交换属性中的非编组对象的结果? 下面我试过,但它不工作:如何设置一个解组对象到一个交换属性在骆驼

<setProperty propertyName="foo"> 
     <unmarshall ref="modelref" id="model_id"" /> 
    </setProperty> 

这里modelref是裁判骆驼org.apache.camel.model.dataformat.JAXBDataFormat类的bean。

任何人都可以给我一些指针来解决这个问题吗?

回答

1

Unmarshal不是setProperty元素的有效子元素。 前提是你已经进行了某种分裂的,现在要解组你个XML之一,并设定为标题你会做这样的事情:

<unmarshal ref="modelref" id="model_id" /> 
<setProperty propertyName="foo"> 
    <simple>${body}</simple> 
</setProperty> 
+0

是的,这工作得很好。 – user3359005

+0

我还在下面添加了将body转换为我的bean类型 user3359005

相关问题