Ваша модель должна работать нормально. Возможно, ваш сервер не возвращает то, что, по вашему мнению, он делает, или, может быть, его не application/json
, что он возвращает?
Вот краткий демо:
Выполнение GET на URL http://www.mocky.io/v2/5583c7fe2dda051e04bc699a возвращает следующую JSON:
{
data: [ ]
}
Если вы запустите следующий класс, вы будете видеть это работает просто отлично:
public class RetrofitDemo {
interface API {
@GET("/5583c7fe2dda051e04bc699a")
void getDataList(Callback<DataList> cb);
}
static class DataList {
List<Data> data;
}
static class Data {
}
public static void main(String[] args) {
API api = new RestAdapter.Builder()
.setEndpoint("http://www.mocky.io/v2")
.build()
.create(API.class);
api.getDataList(new Callback<DataList>() {
@Override
public void success(DataList dataList, Response response) {
System.out.println("dataList=" + dataList);
}
@Override
public void failure(RetrofitError retrofitError) {
throw retrofitError;
}
});
}
}
Будет ли это работать, если getList является общим методом? – punksta
@StasShakirov, я не уверен, что вы имеете в виду. Почему бы вам не попробовать? –
Это не сработало. Попытка понять, почему – punksta