Mule DataWeave - преобразование XML в json - проверка наличия атрибута XML

Это моя полезная нагрузка до трансформации:

Payload: <stock article_id="28932" lot_number="282779"/>

Это код dataweave для преобразования xml в json:

stockPayload: {
        articleId: payload.stock_adjustment.@article_id,
        lotNumber: payload.stock_adjustment.@lot_number,
        uom: payload.stock_adjustment.@uom,
    }

Теперь uom является необязательным полем, поэтому его не будет в атрибуте xml. Это преобразование в настоящее время вызывает ошибку отображения из-за не найденного атрибута uom.

Как я могу позволить dataweave преобразовать даже атрибут не в XML?

1 ответ

  • Для преобразования XML в JSON

, вы можете попробовать ниже:

Пропустить Null On

Всякий раз, когда выходные данные имеют тип XML или JSON и имеют нулевые значения в своих элементах или атрибутах, вы можете указать, генерирует ли это исходящее сообщение, содержащее поля со значениями "null", или эти поля полностью игнорируются. Это можно установить с помощью атрибута в выходной директиве с именем skipNullOn, для которого можно установить три различных значения: элементы, атрибуты или везде.

%output application/xml skipNullOn="everywhere"

Когда установлено:

элементы: пара ключ: значение с нулевым значением игнорируется.

Атрибуты: атрибут XML с нулевым значением пропускается.

везде: применить это правило как к элементам, так и к атрибутам.

Ссылка ниже ссылки для более подробной информации,

DWL ссылка

Другие вопросы по тегам