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 с нулевым значением пропускается.
везде: применить это правило как к элементам, так и к атрибутам.
Ссылка ниже ссылки для более подробной информации,