Ожидается исключение залп Gson GSON BEGIN_OBJECT, но было начало в строке 1 столбец 11
-
20-12-2019 - |
Вопрос
Я использовал JSON для единственной новой вещи
это я использую Google Volley
на Android приложении
Сторона клиента:
public void onResponse(JSONObject response) {
Log.i("asaf","jsone="+response.toString());
WorkerSeekerContiner wsc=new WorkerSeekerContiner();
Gson gsonConvertFrom = new Gson();
wsc=gsonConvertFrom.fromJson(response.toString(), WorkerSeekerContiner.class);
Log.i("asaf","list size="+wsc.getList().size());
.
Серверная сторона:
Gson gsonConvertTo = new Gson();
String jsonString = gsonConvertTo.toJson(send);
JSONObject myJsonObj;
try {
myJsonObj = new JSONObject(jsonString);
out.print( myJsonObj.toString());
.
TOSTRING от ответа JSObject: (удерживайте правильные данные)
.{ "list":[ [251,"t1","t1","Nov 7, 2018",31.483521,34.596634,9000,"Nov 10, 2013","yardwork","a"] ,[252,"t1","t1","Nov 7, 2018",31.483521,34.696634,9000,"Nov 10, 2013","yardwork","a"] ] }
Но когда я пытаюсь gsonconvertfrom.fromjsson это бросает исключение:
wsc= gsonconvertfrom.fromjsson (Rection.toString (), Рабочие leekercontiner.class);
11-15 16:50:52.792: E/AndroidRuntime(17804): com.google.gson.JsonSyntaxException: java.lang.IllegalStateException:
Expected BEGIN_OBJECT but was BEGIN_ARRAY at line 1 column 11
11-15 16:50:52.792: E/AndroidRuntime(17804): at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:180)
11-15 16:50:52.792: E/AndroidRuntime(17804): at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.read(TypeAdapterRuntimeTypeWrapper.java:40)
11-15 16:50:52.792: E/AndroidRuntime(17804): at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:81)
11-15 16:50:52.792: E/AndroidRuntime(17804): at com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:60)
11-15 16:50:52.792: E/AndroidRuntime(17804): at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.read(ReflectiveTypeAdapterFactory.java:93)
11-15 16:50:52.792: E/AndroidRuntime(17804): at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:176)
11-15 16:50:52.792: E/AndroidRuntime(17804): at com.google.gson.Gson.fromJson(Gson.java:755)
11-15 16:50:52.792: E/AndroidRuntime(17804): at com.google.gson.Gson.fromJson(Gson.java:721)
11-15 16:50:52.792: E/AndroidRuntime(17804): at com.google.gson.Gson.fromJson(Gson.java:670)
11-15 16:50:52.792: E/AndroidRuntime(17804): at com.google.gson.Gson.fromJson(Gson.java:642)
11-15 16:50:52.792: E/AndroidRuntime(17804): at asaf.findwork.linkup$1.onResponse(linkup.java:131)
11-15 16:50:52.792: E/AndroidRuntime(17804): at asaf.findwork.linkup$1.onResponse(linkup.java:1)
11-15 16:50:52.792: E/AndroidRuntime(17804): at com.android.volley.toolbox.JsonRequest.deliverResponse(JsonRequest.java:65)
11-15 16:50:52.792: E/AndroidRuntime(17804): at com.android.volley.ExecutorDelivery$ResponseDeliveryRunnable.run(ExecutorDelivery.java:99)
11-15 16:50:52.792: E/AndroidRuntime(17804): at android.os.Handler.handleCallback(Handler.java:615)
11-15 16:50:52.792: E/AndroidRuntime(17804): at android.os.Handler.dispatchMessage(Handler.java:92)
11-15 16:50:52.792: E/AndroidRuntime(17804): at android.os.Looper.loop(Looper.java:153)
11-15 16:50:52.792: E/AndroidRuntime(17804): at android.app.ActivityThread.main(ActivityThread.java:5037)
11-15 16:50:52.792: E/AndroidRuntime(17804): at java.lang.reflect.Method.invokeNative(Native Method)
11-15 16:50:52.792: E/AndroidRuntime(17804): at java.lang.reflect.Method.invoke(Method.java:511)
11-15 16:50:52.792: E/AndroidRuntime(17804): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:821)
11-15 16:50:52.792: E/AndroidRuntime(17804): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:584)
11-15 16:50:52.792: E/AndroidRuntime(17804): at dalvik.system.NativeStart.main(Native Method)
11-15 16:50:52.792: E/AndroidRuntime(17804): Caused by: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was BEGIN_ARRAY at line 1 column 11
11-15 16:50:52.792: E/AndroidRuntime(17804): at com.google.gson.stream.JsonReader.expect(JsonReader.java:339)
11-15 16:50:52.792: E/AndroidRuntime(17804): at com.google.gson.stream.JsonReader.beginObject(JsonReader.java:322)
11-15 16:50:52.792: E/AndroidRuntime(17804): at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:168)
11-15 16:50:52.792: E/AndroidRuntime(17804): ... 22 more
.
И последний мой объект просто держите список объектов:
public class WorkerSeekerContiner {
List<WorkerSeeker> list;
.
Otherseeker Class:
@Entity
public class WorkerSeeker implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
@Temporal(javax.persistence.TemporalType.DATE)
private Calendar startdate;
@Temporal(javax.persistence.TemporalType.DATE)
private Calendar enddate;
private Double offerprice;
private Double latitude;
private Double longitude;
private String address;
private String userName;
private String type;
private String description;
.
Бог дам это: ((
Проблема использовала CreateNAryQuery Wicch с использованием (списком) Q3.getResultList ();дал мне список объектов, а не список работников
errrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
Если кто-то бежит к этой проблеме, исправление действительно легко, просто добавьте
CreatenAryQuery (SQLQURY, Urclass.class );вернется arrayof urclass не объекты
Решение
CreatenAryQueryQuery вернет список объектов по запросу. GTETResultList ();Не перечень Workseeker
Я идущий; /