Flex Gateway新着情報
Governance新着情報
Monitoring API ManagerDataWeave では、JSON (application/json
)、XML (application/xml
)、(application/csv
) などのデータ形式の設定プロパティが提供されます。このプロパティでこれらの形式の DataWeave リーダーおよびライターの動作を変更します。たとえば、CSV リーダーのデフォルトの区切り文字はカンマ (,
) です。この形式の separator
プロパティを使用して、CSV コンテンツの別の区切り文字を指定できます。
さまざまなデータ形式で使用可能なリーダーとライターのプロパティについての詳細は、「サポートされるデータ形式」を参照してください。
開始する前に、Mule 4 アプリケーションでは DataWeave のバージョン 2.x が使用されることに注意してください。Mule 3 アプリケーションでの DataWeave については、DataWeave バージョン 1.2 の例を参照してください。 他の DataWeave バージョンの場合は、DataWeave の目次のバージョンセレクターを使用できます。
次の例は、ライタープロパティを DataWeave output
ディレクティブに追加する方法を示しています。このスクリプトでは、indent = false
を使用して JSON 出力を 1 行に圧縮します。
%dw 2.0
output application/json indent = false
---
{
hello : "world",
bello : "world",
mello : "world"
}
{"hello": "world","bello": "world","mello": "world"}
次の例でも、ライター設定プロパティを output
ディレクティブに追加しています。
schemaUrl
を使用する Avro の例
header=true
を使用する Excel (XLSX) の例
schemaPath
を設定するフラットファイルの例
inlineCloseOn="empty"
を使用して空の XML 要素を閉じる XML の例
DataWeave の read
、readUrl
、および write
関数は、中括弧内の 1 つ以上のカンマ区切りプロパティ設定を受け入れます。
次のスクリプトのヘッダーの myVar
の値は、空の子要素 (<ex1></ex1>
) を含む XML サンプルを入力する read
関数です。この関数は、空の要素の値を null
に変換する XML リーダープロパティ {nullValueOn: "empty"}
を渡します。
スクリプトの本文の write
関数は myVar
の値を入力として受け入れます。この関数では、JSON ライタープロパティを {skipNullOn:"objects", writeAttributes:true}
に渡して、null
値 (<ex1>null</ex1>
) を含むオブジェクトをスキップし、属性と <ex3 a='greeting'>hello</ex3>
の値を書き込みます。
%dw 2.0
var myVar = read("<greeting><ex1></ex1><ex2>hello</ex2><ex3 a='greeting'>hello</ex3></greeting>", "application/xml", {nullValueOn: "empty"})
output application/json with binary
---
write(myVar.greeting, "application/json", {skipNullOn:"objects", writeAttributes:true})
{
"ex2": "hello",
"ex3": {
"@a": "greeting",
"__text": "hello"
}
}
リーダープロパティを readUrl
に渡す例を次に示します。