Я анализирую ответ от API last.fm. Но кажется, что они использовали некоторую обертку для некоторых ответов, что вызывает некоторую боль. Чтобы привести пример:
{
"artists":{
"artist":[
{
"name":"Coldplay",
"playcount":"816763",
"listeners":"120815",
"mbid":"cc197bad-dc9c-440d-a5b5-d52ba2e14234",
"url":"http:\/\/www.last.fm\/music\/Coldplay",
"streamable":"1"
},
{
"name":"Radiohead",
"playcount":"846668",
"listeners":"99135",
"mbid":"a74b1b7f-71a5-4011-9441-d0b5e4122711",
"url":"http:\/\/www.last.fm\/music\/Radiohead",
"streamable":"1"
}
],
"@attr":{
"page":"1",
"perPage":"2",
"totalPages":"500",
"total":"1000"
}
}
}
Не только ответ заключен в объект исполнителей, но и массив объектов имеет также объектную оболочку.
Таким образом, класс-оболочка типа:
public class LastFMArtistWrapper {
public List<Artist> artists;
}
Не будет работать. Я работал над этим, создав два класса-оболочки, но это выглядит очень уродливо. Можно ли как-то использовать что-то вроде @XMLElementWrapper в Джексоне?