У меня есть webService, который я читаю и возвращает результат List >>.
Этот объект содержит серию значений, которые я получаю, когда retrofit2 выполняет GET. Я изменяю некоторые данные этого объекта, которые я получаю List >>, обрабатывая его как ArrayList List >>> title = new ArrayList >>> ();
Пока все идеально, моя проблема в том, что я не могусделать POST с измененным объектом и отправить его на мой webService.
У меня есть класс, который я вызываю POST, где я получаю объект и выполняю get и устанавливаю
Post class
public class Post {
@SerializedName("result")
@Expose
private List<List<List<Object>>> result = null;
public List<List<List<Object>>> getResult() {
return result;
}
public void setResult(List<List<List<Object>>> result) {
this.result = result;
}
}
С другой стороны, у меня есть класс PostService, в котором я выполняю GET и POST.
Я не знаю, что я делаю неправильно, поэтому POST не работает дляme.
Android Studio не выдает никаких ошибок, но не изменяет WebService при вызове POST.
public interface PostService {
String API_ROUTE = " obtenerListaAlarmasSMS";
@GET(API_ROUTE)
Call<Post> getPost(@Header("Authorization") String credencialesEnBase64);
@POST(API_ROUTE)
@FormUrlEncoded
Call<Post> UpdatePostCall(@Field("result:[]") List<List<List<List<Object>>>> result );
}
Здесь я помещаю текст при вызове POST
Retrofit retrofit = new Retrofit.Builder()
.baseUrl("http://192.168.0.249:9096/datasnap/rest/TMetodosREST/")
.addConverterFactory(GsonConverterFactory.create())
.build();
PostService Intento = retrofit.create(PostService.class);
Call <Post> call3 = Intento.UpdatePostCall(OtroArrayVacio);
try {
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
Response<Post> response = call3.execute();
} catch (IOException e) {
e.printStackTrace();
}
У POJO есть следующее:
{
"result":[
[
[
12,
"01",
1,
"Fallo de corriente",
0,
1
],
[
12,
"01",
2,
"Nivel m\u00E1ximo (activaci\u00F3n)",
0,
0
],
[
12,
"01",
3,
"Nivel m\u00E1ximo (desactivaci\u00F3n)",
0,
0
],
[
12,
"01",
4,
"Nivel desborde",
0,
1
],
[
12,
"01",
5,
"Falta de agua",
0,
0
],
[
12,
"01",
6,
"Exceso de caudal",
0,
0
],
[
12,
"01",
7,
"Defecto de caudal",
0,
0
]
]
]
}
Возможно, моя проблема связана с POJO, но дело в том, что мне удалось обработать ее так же, как retrofit2 дает мне в Списке >>.
Что мне нужно, так это после того, как объект был изменен, отправить его в webServiно я не понимаю.