Я использую Mule 3.4 CE и я Грядет JSON данных через HTTP в следующем формате:Извлечение массива из JSON в мул ESB
{
"People" : [
{
"Details" :
{
"Name" : "John Smith",
"Email" : "[email protected]"
}
},
{
"Details" :
{
"Name" : "Tim Smith",
"Email" : "[email protected]"
}
},
{
"Details" :
{
"Name" : "Ken Smith",
"Email" : "[email protected]"
}
},
}
мне нужно, чтобы извлечь сообщения электронной почты и поиска контакта с Salesforce эти письма и в то же время я хочу сохранить полезную нагрузку JSON. Итак, мой вопрос: как я могу извлечь электронные письма через MEL? (например, «Люди/Детали/*/Электронная почта»). Я знаю, что это неверно, но я ищу правильный синтаксис.
Редактировать: Я хочу извлечь электронные письма одним выстрелом а не индексирования (например, для людей,/детали [0] .EMAIL, возможно, с использованием MEL.
Вы также можете использовать простую Groovy Однострочник разобрать карту к списку писем: # [заводной: flowVars.myJsonMap.People.collect() {} it.Details.Email] –
@Ryan - Спасибо за ваш ответ. Я ищу, чтобы извлечь все электронные письма, возможно, в одно действие. Я могу написать компонент java и сделать это, но мне было интересно, можно ли это сделать через MEL. –
@ Антон - Спасибо за ваш комментарий. Я попробую ваш пример и посмотрю, будет ли это соответствовать моим потребностям. –