1

私はDataweave のドキュメントを読んでいて、以下の例に困惑しています。

ドキュメントによると

入力ディレクティブを使用すると、任意の数の入力ソースをグローバル変数で使用できるようになり、変換の本体の任意の部分で参照できるようになります。これらのいずれかを参照するには、ディレクティブで定義した名前で呼び出すだけです。

次に、以下の例をフォローアップします

%dw 1.0
%input in0
%output application/xml
---
payload

私の質問:

mule はどのスコープで変数 in0 を探しますか? ペイロード、フロー、セッション、またはその他の何か、そしてどの順序で?

この例では、in0 はどこで使用されていますか? この例ではどのように役立ちますか?

なぜ入力変数が必要なのですか? Dataweave では、flowVars.hello が許可されているようです。

4

2 に答える 2

0

通常、%input ディレクティブで何も宣言する必要はありません。デフォルトでは、ペイロード、flowVars、インバウンド/アウトバウンド プロパティ、sessionVars などは、MEL と同様に dataweave でアクセスできます。

MEL は Java と同じです。デバッグするために Java で記述できるもの (System.out) はすべて、MEL でも実行できます。

%dw 1.0
%output application/java
---
{
    GENDER: payload.gender,
    test:flowVars.test,
    testIp:inboundProperties.testIp,
    testOp:outboundProperties.testOp
}

複数の入力については、この例を見てください - 複数の入力

于 2016-02-26T19:17:03.660 に答える