2017-10-11 20 views
0

キャメルを初めて使用しているので、シンプルなように思えます。私は、私の交換の中にある2つのXMLのアンマーシャリングの要件を持っており、対応するPOJOをプロセッサに渡します。私は1つのXMLをアンマーシャリングでき、それを別のXMLのために交換して同じプロパティに設定できると思っています。最後に、プロセッサではプロパティを取得し、プロセッサで必要なロジックを実行できます。 私はxmlをアンマーシャルでき、またexchange.in.bodyの最後のPOJOを取得できます。しかし、交換リストのオブジェクトの整列されていないオブジェクトの結果を設定する正しい方法は何ですか? 私は以下を試みたが、それは仕事をdoesntの:アンマーシャルされたオブジェクトをキャメルの交換プロパティに設定する方法

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

ここmodelrefラクダからorg.apache.camel.model.dataformat.JAXBDataFormatクラスのBeanへの参照です。

誰でも私にこれを解決するためのいくつかの指針を与えることができますか?

答えて

1

unmarshalは、setProperty要素の有効な子要素ではありません。

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

はい、これはうまく動作します: は、すでにスプリットのいくつかの並べ替えを行い、今、あなたのXMLSの1を非整列化したいとあなたはこのような何かをしたいヘッダーとして設定していることを条件とします。 – user3359005

+0

ボディを自分のbean型に変換するために、以下も追加しました user3359005

関連する問題