将数组分配给mule中的字符串

将数组分配给mule中的字符串,mule,mule-studio,dataweave,Mule,Mule Studio,Dataweave,如何将数组分配给字符串?我想将XML转换为CSV。我的数据返回数组。我想把它转换成CSV 转换消息代码: %input payload application/xml %output application/java --- (payload.catalog.*category-assignment default []) groupBy $.@product-id pluck { product-id:$$, cat-id: $.@category-id jo

如何将数组分配给字符串?我想将XML转换为CSV。我的数据返回数组。我想把它转换成CSV

转换消息代码:

%input payload application/xml
%output application/java
---
(payload.catalog.*category-assignment default []) groupBy $.@product-id pluck {

        product-id:$$,
        cat-id: $.@category-id joinBy ":",
        primary-flag:$.primary-flag,
        field3:$.@category-id when $.primary-flag[0] == "true"  otherwise ""

    }
我的有效载荷如下:

[{
    product - id = D198561, cat - id = 1111, primary - flag = null, field3 =
}, {
    product - id = D198563, cat - id = 30033, primary - flag = [true], field3 = [30033]
}, {
    product - id = D198566, cat - id = 0933: 2104: 7043, primary - flag = null, field3 =
}]
我希望以CSV格式输出有效负载,如下所示:

Field1:product id,Field2:cat id,Field3:Field3


它在字段3中的给定错误,因为它类似于数组字段3=[30033]。

提前感谢

为什么不直接转到CSV,而使用应用程序/CSV?您可以查看此教程:。我必须对传入的xml文件执行条件检查。。所以我必须先创建数据地图,然后将其转换为csv