Flex Gateway新着情報
Governance新着情報
Monitoring API Managerこの DataWeave の例では、DataWeave map
関数を使用して、キー book
に一致するオブジェクト要素を反復処理します。入力には、無視されるキー magazine
も含まれます。
開始する前に、DataWeave バージョン 2 (%dw 2.0
) は Mule 4 アプリケーションを対象とすることに注意してください。Mule 3 アプリケーションの場合、Mule 3.9 ドキュメントセットの DataWeave バージョン 1 (%dw 1.0
) の例を参照してください。他の Mule バージョンの場合は、目次の Mule Runtime バージョンセレクターを使用できます。
この例では、次の DataWeave 関数を使用します。
キー "book"
に一致する要素が含まれる配列を返す複数値セレクター *book
。
複数値セレクターによって返される配列の各オブジェクトを調べる map
。
%dw 2.0
var myInputExample = {
"inventory": {
"book" : {
"category": "cooking",
"title": "Everyday Italian",
"author": "Giada De Laurentiis",
"year": "2005",
"price": "30.00"
},
"book" :{
"category": "children",
"title": "Harry Potter",
"author": "J K. Rowling",
"year": "2005",
"price": "29.99"
},
"book" :{
"category": "web",
"title": "Learning XML",
"author": "Erik T. Ray",
"year": "2003",
"price": "39.95"
},
"magazine" :{
"category": "web",
"title": "Wired Magazine",
"edition": "03-2017",
"price": "15.95"
},
"magazine" :{
"category": "business",
"title": "Time Magazine",
"edition": "04-2017",
"price": "17.95"
}
}
}
output application/json
---
items: myInputExample.inventory.*book map (item, index) -> {
"theType": "book",
"theID": index,
"theCategory": item.category,
"theTitle": item.title,
"theAuthor": item.author,
"theYear": item.year,
"thePrice": item.price as Number
}
{
"items": [
{
"theType": "book",
"theID": 0,
"theCategory": "cooking",
"theTitle": "Everyday Italian",
"theAuthor": "Giada De Laurentiis",
"theYear": "2005",
"thePrice": 30.00
},
{
"theType": "book",
"theID": 1,
"theCategory": "children",
"theTitle": "Harry Potter",
"theAuthor": "J K. Rowling",
"theYear": "2005",
"thePrice": 29.99
},
{
"theType": "book",
"theID": 2,
"theCategory": "web",
"theTitle": "Learning XML",
"theAuthor": "Erik T. Ray",
"theYear": "2003",
"thePrice": 39.95
}
]
}