I figure serialization should be pretty trivial with object mapping solutions such as Gson and Jackson But deserialization (at least in Jackson) requires some boilerplate + some type information in the JSON tree itself (http://www.studytrails.com/java/json/java-jackson-Serialization-polymorphism.jsp) Do you have any thoughts on this?