1

あるミュール コンポーネントがペイロード オブジェクトを他の値に変換するという問題があります。例: ペイロードに学生オブジェクトが含まれているとします。生徒名の初期値=a;

私の最初のラバ コンポーネントは、生徒の名前を x に変更します。

Student s=new Student();
s.setName("x");

2 番目のミュール コンポーネントはX、ペイロードから名前を受け取ります。しかし、私は元の値が欲しいです'a'。ミュールの元のペイロードを確認してみましたが、その値も変更されています..

<flow .....
   <component> </component> // 1st component
    <component></component> //2nd component
</flow>

両方のコンポーネントで同じペイロード (オリジナル) (a という名前の学生オブジェクト) が必要です..どうすればそれを行うことができますか? 元のペイロードを確認したところ、変換されています..

ありがとう

4

2 に答える 2

4

<all>次のような異なるコンポーネントに同じペイロードを送信するために使用できます

<flow .....
   <all>
       <component> </component> // 1st component
       <component></component> //2nd component
   </all>
</flow>

または、同じことにアプローチする別の方法は、元のペイロードを変数に格納してから、ペイロードを前のものに置き換えることです。

<set-variable variableName="originalPayload" value="#[message.payload]" />

その後、

<set-payload value="#[flowVars.originalPayload]"/>
于 2013-05-14T14:52:00.170 に答える