cancel
Showing results forย 
Search instead forย 
Did you mean:ย 

Generating wrong Json format for empty values

mohit3
New Contributor

Hi All,

I am creating a Json file by using the Json formatter but I am not getting the json in correct format for all the empty values.

Below is the input for Json Formatter :

image

Getting below output from Json Formatter.
image

The output should look like below. Empty fields should be enclosed in double codes.
โ€œBankgroupโ€ : โ€œโ€,
โ€œBankNumberโ€ : โ€œโ€,

Please let me know how we can achieve this.
@dmiller

Thanks
Mohit

5 REPLIES 5

djsiegel
Former Employee

Hi Mohit!
What you might try is passing that JSON over to a mapper, and using the mapper to do what you want.
Turn off pass through in the mapper and use an expression language statement to convert everything to a string like this:

$.mapValues(x=>x == null ? "" : x.toString())

This will essentially set everything to a string, even an empty string.
Hereโ€™s what my mapper looks like to do this:
image
Hope that gets you closer!
โ€“ David

@djsiegel I am not using the pass through. I am just mapping the fields in mapper snap and then sending it to Json formatter snap to generate the Json but it is only showing single quotation mark for empty values.

I tried your expression as well but it is also not working.

ptaylor
Employee
Employee

Mohit, this is just an odd bug in the Designerโ€™s viewer for JSON preview data. If you actually save the output of the JSON Formatter to a file using a File Writer, youโ€™ll see that the empty string is a pair of double quotes as you expect.

Can confirm, Patrick - I happened to just be building an example to test myself.
When I download it, I do see the doublequotes.
Mohit - hereโ€™s my example, with both the input and output. Hope that helps.

CommunityExampleJSON.zip (4.3 KB)
image