Mulesoft URL检索

时间:2018-04-03 06:53:24

标签: mule mule-component

数组作为属性文件中的表达式:

Myday.contextpath.getUrls [“http://url1”,“http://url2”,“http://url3”]

如何在每个范围的集合表达式中使用$ {Myday.contextpath.getUrls}?

2 个答案:

答案 0 :(得分:0)

您好,您可以执行以下操作

  1. 在您的属性文件中使用逗号或任何分隔符分隔网址

    Myday.contextpath.getUrls = http://url1,http://url2,http://url3

  2. 然后在foreach组件之前通过拆分整个属性值

    来创建有效负载
    • 通过dataweave示例 p('Myday.contextpath.getUrls')splitBy“,”

    • 或通过MEL示例 #['$ {Myday.contextpath.getUrls}'。split(',')]

  3. 然后使用步骤2中的有效负载作为foreach组件的输入有效负载,您可以将集合字段留空

答案 1 :(得分:0)

使用Mule 4.0,您可以使用以下语法使用for-each范围迭代存储在属性文件中的值

<foreach doc:name="For Each" collection='#[p("Myday.contextpath.getUrls") splitBy ","]'>
    <logger doc:name="Logger" level="INFO" message="payload is : #[payload]" />
</foreach>

注意:假设您正在存储没有数组括号的属性“[”“]”,如下所示:

Myday.contextpath.getUrls = "http://url1,http://url2,http://url3"