Почему вывод Mule DataWeave в flowVar преобразуется в строку?

Есть ли какая-то конкретная причина, по которой вывод сообщения преобразования в flowVars или outboundProperties преобразуется в String, но в случае полезной нагрузки он остается как WeaveOutputHandler?

введите здесь описание изображения

Снимок экрана из Mule Debugger с полезной нагрузкой и flowVars.myVar, созданным с помощью того же сценария DataWeave:

%dw 1.0
%output application/xml
---
{
    request: {
        id: 100
    }
}

Проблема в том, что вы не можете использовать flowVars.myVar.request.id в любых дальнейших преобразованиях в вашем потоке.


person Lukas    schedule 03.10.2015    source источник
comment
Вы пытаетесь получить к нему доступ позже, используя MEL или другое преобразование dataweave?   -  person Shoki    schedule 05.10.2015
comment
В другом преобразовании dataweave   -  person Lukas    schedule 06.10.2015


Ответы (2)


Вы можете попробовать поместить объект-преобразователь в XML после первого сообщения преобразования.

Если это не сработает, скажите, пожалуйста.

person Ismael G.    schedule 08.10.2015

Строка - правильный тип для данных XML. Похоже, вы хотите преобразовать его в граф объектов Java.

Измените% output на application / java, это сопоставит данные с java-графиком на основе хэш-карты, который в большинстве случаев должен работать для используемого вами метода доступа.

person Mesh    schedule 22.03.2018
comment
Лол только что понял, ты спросил об этом 2,5 года назад - - person Mesh; 22.03.2018