Я создал андроид аппликатоп с отдыхом api. Здесь я использовал gson
для остальных api и использовал retrofit
для подключения этого приложения api and android для отдыха.Android: java.text.ParseException: Непревзойденная дата
В моем приложении я попытался получить некоторые данные из остального api, используя идентификатор. Затем я получил следующий журнал ошибок (я не опубликовал свое имя приложения с этим журналом ошибок).
Должен ли я изменить некоторые свойства в режиме отдыха api? или любые изменения в приложении. В настоящее время я тестирую свое приложение для Android с помощью rest api на localhost.
Что мне делать, чтобы справиться с этим исключением?
Это мой журнал ошибок,
com.google.gson.JsonSyntaxException: 1989-10-11
at com.google.gson.DefaultDateTypeAdapter.deserializeToDate(DefaultDateTypeAdapter.java:107)
at com.google.gson.DefaultDateTypeAdapter.deserialize(DefaultDateTypeAdapter.java:82)
at com.google.gson.DefaultDateTypeAdapter.deserialize(DefaultDateTypeAdapter.java:35)
at com.google.gson.TreeTypeAdapter.read(TreeTypeAdapter.java:58)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.read(ReflectiveTypeAdapterFactory.java:103)
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:196)
at com.google.gson.Gson.fromJson(Gson.java:810)
at com.google.gson.Gson.fromJson(Gson.java:775)
at retrofit.GsonResponseBodyConverter.convert(GsonResponseBodyConverter.java:36)
at retrofit.GsonResponseBodyConverter.convert(GsonResponseBodyConverter.java:24)
at retrofit.OkHttpCall.parseResponse(OkHttpCall.java:148)
at retrofit.OkHttpCall.access$100(OkHttpCall.java:29)
at retrofit.OkHttpCall$1.onResponse(OkHttpCall.java:94)
at com.squareup.okhttp.Call$AsyncCall.execute(Call.java:168)
at com.squareup.okhttp.internal.NamedRunnable.run(NamedRunnable.java:33)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:841)
Caused by: java.text.ParseException: Unparseable date: "1989-10-11" (at offset 10)
at java.text.DateFormat.parse(DateFormat.java:555)
at com.google.gson.DefaultDateTypeAdapter.deserializeToDate(DefaultDateTypeAdapter.java:105)
... 17 more
Update
я нашел следующую строку кода в моем дооснащения вызова, я думаю, что это является причиной для исключения
Gson gson = new GsonBuilder()
.setDateFormat("yyyy-MM-dd'T'HH:mm:ss")
.create();
Но я не знаю, как преобразовать этот формат даты для общего формата даты.
В настоящее время я понятия не имею, как справиться с этим исключением. Есть идеи?
Возможный дубликат [GSON - Формат даты] (http://stackoverflow.com/questions/6873020/gson-date-format) – AxelH
@AxelH: Спасибо, чувак, за ссылку. +1 для вашего комментария. – Barrier