В документации DataWeaver 10.8. Changing the Format of a Date
https://developer.mulesoft.com/docs/dataweave#_date_time_operationsDateWeaver дата преобразования поля не работает - Mule
Below is the transform
%dw 1.0
%output application/json
%type mydate = :string { format: "YYYY/MM/dd" }
---
{
formatedDate1: |2003-10-01T23:57:59| as :mydate,
formatedDate2: |2015-07-06T08:53:15| as :mydate
}
В dataweaver просмотре он смотрит отлично, как и ожидалось ответ (Изменен формат даты). Я принимаю ответ в компоненте файла, но он не конвертирует дату в указанном формате (также хранит журнал сразу после dataWeaver, а не ожидаемый ответ).
Ответ становится ниже
{
"formatedDate1": "2003-10-01T23:57:59",
"formatedDate2": "2015-07-06T08:53:15"
}
У меня есть другой запрос, здесь мы жестко прописывать дату внутри ткача. Если предположить, что мы берем поле даты из параметра Input, нам нужно обернуть поле внутри ||
. Пример, как показано ниже, будет ли он работать
%dw 1.0
%output application/json
%type mydate = :string { format: "YYYY/MM/dd" }
---
{
formatedDate1: |payload.dateField1| as :mydate,
formatedDate2: payload.dateField1 as :mydate
}
Выше, кажется, не работает для меня. Пожалуйста, дайте мне знать правильное использование. Спасибо заранее
Спасибо! Правильно должно быть ошибка!. У вас есть идеи по моему другому запросу. Как передать поле даты из inputField без ручной кодировки внутри преобразования. Надеюсь, вы правильно поняли мой вопрос. – star
Да, я понял. Это также является ограничением, так как я не могу найти какой-либо парсер в Dataweave для перевода текста formatDate1 в: date. Возможно, вы можете попытаться размонтировать JSON в pojo (json to Object, с классом return, содержащим два поля даты). Затем добавьте это как вход в dataweave, то есть добавив в свои метаданные. –
Было бы здорово, если бы DataWeaver напрямую мог предоставить функциональность. – star