Сериализация Java-объекта с GSON

Я хотел бы сериализовать этот объект в JSON String

public class Person {
   public String id;
   public String name;
   public Person parent;
}

и получить такой результат:

{id: 1, name: "Joe", parent: 2}

Я пытался использовать

Person p = new Person(1, "Joe", new Person(2, "Mike"));
Gson gson = new GsonBuilder()
            .registerTypeAdapter(Persona.class, new PersonSerializer()).create();
String str = gson.toJson(p);

но вместо этого я получил:

"1"

PersonSerializer:

public class PersonSerializer implements JsonSerializer<Person> {
    public JsonElement serialize(Person src, Type typeOfSrc, ...) {
        return new JsonPrimitive(src.id);
    }
}

Пожалуйста, любые предложения приветствуются

Спасибо, Марио

Ответы на вопрос(2)

Ваш ответ на вопрос