How to JSON.serialize not including null values

I have an Issue. I have a class with few Strings

public class DopplerJSONSerializer {

    public String name;
    public String email;
}

In some, I need to serialize and use only the name String in some methods, and in others I need to use all of them.

Right now if i do for example:

    public String createListJSON(String listName) {
    DopplerJSONSerializer listWrapper = new DopplerJSONSerializer();
    listWrapper.name = listName;
    String listJSON = JSON.serialize(listWrapper);
    return System.JSON.serialize(listJSON);
}

It will return me:

{"name":"New List", "email":null}

How can I do to not include the non serialized variables into the JSON.serialize?

Thank you

Answers:

Thank you for visiting the Q&A section on Magenaut. Please note that all the answers may not help you solve the issue immediately. So please treat them as advisements. If you found the post helpful (or not), leave a comment & I’ll get back to you as soon as possible.

Method 1

Use the alternative method signature:

serialize(objectToSerialize, suppressApexObjectNulls);

Using your code as an example:

String listJSON = JSON.serialize(listWrapper, true); // suppress null values


All methods was sourced from stackoverflow.com or stackexchange.com, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0

0 0 votes
Article Rating
Subscribe
Notify of
guest

0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x