Я называю обслуживание и ответы что-то вроде этого:ответ дооснащения и собственно POJO (Plain Old Java Object)
[
{
"CreateDate": null,
"Creator": 0,
"Id": 1,
"LastModifiedDate": null,
"Modifier": 0,
"Description": null,
"Name": "test0"
},
{
"CreateDate": null,
"Creator": 0,
"Id": 2,
"LastModifiedDate": null,
"Modifier": 0,
"Description": null,
"Name": "test2"
},
{
"CreateDate": null,
"Creator": 1,
"Id": 3,
"LastModifiedDate": null,
"Modifier": 1,
"Description": null,
"Name": "test1"
}
]
Я хочу создать соответствующий объект для этого, так что я создал два класса, как следующее:
documentListWrapper
public class DocumentListWrapper {
List<DocumentList> documentListList;
}
documentList
public class DocumentList {
//others field not needed
int Id;
String Name;
}
Но когда я называю обслуживание всегда проваливались и перейти к методу отказа моей службы, и это бросает:
D/Retrofit﹕ Content-Type: application/json; charset=utf-8
D/Retrofit﹕ Server: Microsoft-IIS/8.5
D/Retrofit﹕ X-Powered-By: ASP.NET
D/Retrofit﹕ Date: Tue, 30 Jun 2015 06:33:26 GMT
D/Retrofit﹕ Content-Length: 355
D/Retrofit﹕ Connection: Keep-Alive
D/Retrofit﹕ [{"CreateDate":null,"Creator":0,"Id":1,"LastModifiedDate":null,"Modifier":0,"Description":null,"Name":"test0"},{"CreateDate":null,"Creator":0,"Id":2,"LastModifiedDate":null,"Modifier":0,"Description":null,"Name":"test1"},{"CreateDate":null,"Creator":1,"Id":3,"LastModifiedDate":null,"Modifier":1,"Description":null,"Name":"test2"}]
D/Retrofit﹕ <--- END HTTP (355-byte body)
** Отредактировано: **
Услуги:
@GET("/DocumentTypeList1")
void documentTypeList1(
@Query("userName") String userName,
@Query("password") String password, Callback<DocumentListWrapper> callback);
serviceHelper cl жопа:
public static final int TIMEOUT_CONNECTION = 6000;
public static final int TIMEOUT_SOCKET = 30000;
private static ServiceHelper instance = new ServiceHelper();
RestAdapter restAdapter;
IocService service;
private ServiceHelper() {
restAdapter = createAdapter();
service = restAdapter.create(IocService.class);
}
public static ServiceHelper getInstance() {
return instance;
}
private RestAdapter createAdapter() {
HttpParams httpParameters = new BasicHttpParams();
// Set the timeout in milliseconds until a connection is established.
// The default value is zero, that means the timeout is not used.
HttpConnectionParams.setConnectionTimeout(httpParameters, TIMEOUT_CONNECTION);
// Set the default socket timeout (SO_TIMEOUT)
// in milliseconds which is the timeout for waiting for data.
HttpConnectionParams.setSoTimeout(httpParameters, TIMEOUT_SOCKET);
DefaultHttpClient httpClient = new DefaultHttpClient(httpParameters);
return new RestAdapter.Builder()
.setEndpoint(ENDPOINT)
.setLogLevel(RestAdapter.LogLevel.FULL)
.setClient(new ApacheClient(httpClient))
.build();
}
}
public void documentTypeList1(String userName,String password,Callback<DocumentListWrapper> callback){
service.documentTypeList1(userName,password,callback);
и я называю обслуживание с методами, как это:
public void documentListType(){
ServiceHelper.getInstance().documentTypeList1("userName", "password", new Callback<DocumentList>() {
@Override
public void success(DocumentListWrapper documentListWrapper, Response response) {
}
@Override
public void failure(RetrofitError retrofitError) {
}
});
}
Мой вопрос: Что-то случилось с моим классом объекта или его вызовом службы или ...?
Кажется, ваш класс объектов в порядке. Можете ли вы показать вызов «Дооснащение»? – nicopasso
@nicopasso Спасибо, см. Мой отредактированный вопрос :) – Amir