Com este comando no Dataweave 2.0:
"08:05:30" as DateTime{format: "hh:mm:ss"} as String {format: "hh:mm:ss"}
Eu tenho esse erro:
Unable to obtain ZonedDateTime from TemporalAccessor
Como resolver isso? Todo o meu problema é transformar:
"Wed Oct 18 2023 08:05:30 GMT-0000 (GMT)"
para
"2012-10-11T12:30:40-03:00"
Tentei :
"Wed Oct 18 2023 08:05:30 GMT-0000 (GMT)" as DateTime{format: 'E MMM dd yyyy hh:mm:ss zXX O'} as String {format: "yyyy-MM-dd'T'hh:mm:ssO"}
Muito obrigado !
Você está tentando converter uma string que aparentemente contém uma hora em um tipo Data Hora mais Fuso horário. Como a entrada não contém a data e o fuso horário, a transformação falhará.
Em vez disso, converta-o para LocalTime (ou seja, um horário sem fuso horário):
Observe que usei
HH
para o formato 24 horas. O usohh
é para o formato 12h am/pm.A propósito, tudo bem se isso for apenas um exemplo, mas converter para String no final é apenas retornar uma string igual à entrada. Não tenho certeza se isso é intencional.
Encontrei a resposta para a segunda pergunta: