Support Questions

Find answers, ask questions, and share your expertise
Announcements
Check out our newest addition to the community, the Cloudera Data Analytics (CDA) group hub.

Not Getting Jolt output as expected in NiFi

Explorer

I have below input:

 

[
{
"seq_no": 18,
"Id": 174052,
"Date": "2021-12-26T00:00:00Z"
},
{
"seq_no": 19,
"Id": 174052,
"Date": "2021-12-26T00:00:00Z"
}
]

 

Jolt Spec:

 

[

{
"operation": "modify-overwrite-beta",
"spec": {
"*": {
"seq_no": "=toString",
"Date": "=substring(@(1,REVISION_IND),0,10)"
}
}
},
{
"operation": "shift",
"spec": {
"*": {
"seq_no": "[&1].seq_no",
"Id": "[&1].Id",
"Date": "[&1].Date"
}
}
},
{
"operation": "shift",
"spec": {
"*": "data"
}
},
{
"operation": "default",
"spec": {
"header": {
"submit": "true",
"comments": "3"
}
}
}
]

 

Output:

{
"data" : [ {
"seq_no" : "18",
"Id" : 174052,
"Date" : "2021-12-26T00:00:00Z"
}, {
"seq_no" : "19",
"Id" : 174052,
"Date" : "2021-12-26T00:00:00Z"
} ],
"header" : {
"submit" : "true",
"comments" : "3"
}
}

 

Desired Output:

 

{
"header" : {
"submit" : "true",
"comments" : "3"
},
"data" : [ {
"seq_no" : "18",
"Id" : 174052,
"Date" : "2021-12-26T00:00:00Z"
}, {
"seq_no" : "19",
"Id" : 174052,
"Date" : "2021-12-26T00:00:00Z"
} ]
}

 

Can you please help how I will get the header part and then the data. I used sort but it's not helping me. Appreciate your help. Thank you.

2 REPLIES 2

Rising Star

Hello,

 

you can add following object as last step to your JOLT Spec:

{
    "operation": "shift",
    "spec": {
      "header": "header",
      "data": "data"
    }
}

 

Greetings

Explorer

Hi @Faerballert , 

Thank you so much. I tried it earlier the same but not sure why it were not working.

some of my fields contains null values. But instead of null I want the empty string in the same jolt. Can we do that? is there any option to do the same.   

Take a Tour of the Community
Don't have an account?
Your experience may be limited. Sign in to explore more.