Grails - grails.converters.JSON - removing the class name

Viewed 11920

Is there a way to remove the class field in a JSON converter?

Example:

import testproject.*
import grails.converters.*  
emp = new Employee()  
emp.lastName = "Bar"  
emp as JSON  

as a string is

{"class":"testproject.Employee","id":null,"lastName":"Bar"}

I'd prefer

{"id":null,"lastName":"Bar"}

Is there a way to add one more line of code at the end to remove the class field?

7 Answers

You can customize the fields to be excluded (including the class name) using the setExcludes method provided in the grails.converters.JSON

def converter = emp  as JSON
converter.setExcludes(Employee.class, ["class",""])

and then, you can use it just like according to your requirements,

println converter.toString()
converter.render(new java.io.FileWriter("/path/to/my/file.xml"))
converter.render(response)
Related