Джексон: сериализация пользовательской коллекции в JSON

Я пытаюсь json-сериализовать класс MyRootClass со свойством, которое представляет собой набор элементов второго класса MyClass:

public class MyRootClass {
   private List<MyInterface> list = new ArrayList<MyInterface>();
   // getter / setter
}

public class MyClass implements MyInterface {
   private String value = "test";    
   // getter / setter
}

Следующий код:

MyRootClass root = new MyRootClass();
root.getList().add(new MyClass());
ObjectMapper mapper = new ObjectMapper();
mapper.writeValue(System.out, root);

Создает этот вывод JSON:

{"list": [ {"value":"test"} ] }

вместо того, что мне нужно, каждый объект в коллекции сериализован с именем:

{"list": [ {"myclass": {"value":"test"}} ] }

Есть ли способ добиться этого с помощью Джексона? Я думал о написании собственного сериализатора, но не нашел ничего, связанного с коллекцией объектов.

7
задан Guido 17 October 2010 в 17:46
поделиться