Skip to main content

%dw 2.0

 

import * from dw::core::Strings

 

var regExDateTime = /\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z)/

var regExDate = /^\d{4}\-(0[1-9]|1[012])\-(0[1-9]|[12][0-9]|3[01])$/

var regExBoolean = /^(true|false)$/

var id= payload.ChangeEventHeader.recordIds[0]

 

output text/plain

---

id

My DW is somewhat big having some calculation for sake of simplicity I just pasted 4 lines of code only.

In that 4 line itself I am getting below error

Scripting language error on expression '%dw 2.0

 

import * from dw::core::Strings

 

var regExDateTime = /\d{4}-[01]\d-[...'. Reason: Unable to resolve reference of payload..

I even tried by defining meta data for payload as like below

 

var id= payload.ChangeEventHeader.recordIds[0] as String 
var id= payload.ChangeEventHeader.recordIds[0] as String  default 'axd123'

But nothing helps

4 respuestas
  1. 14 jun, 4:19

    You can simplify it. In Mule 4 DataWeave, you usually don’t need input payload application/json. Just use:

    %dw 2.0

    output application/json

    ---

    {

    myRootElement: payload

    }

    The payload type comes from the message metadata/header (content-type: application/json).

0/9000