Десериализация Gson выдает ошибку FutureTask - PullRequest
0 голосов
/ 24 сентября 2018

CASE решено

ОБНОВЛЕНИЕ: Дело в том, что у GSON возникли проблемы при попытке десериализации в объект Long, пока он находится в работающем потоке, все, что мне нужно было сделать, - это десериализовать мою строку вручную, добавив часть.строки с длинным числом в другой объект String и только после этого приведите его как Long в мой объект Long. Надеюсь, это поможет кому-то еще.

Поэтому я использую Кафку, а в некоторых данных, которые Кафка дает мнеТема мне нужно десериализовать (те же данные, которые я сериализовал и поместил в тему). Но это выдает ошибку FutureTask.как я сериализую:

mKafkaProducer.sendMessage(
                    LoadBalancingManager.getGson().toJson(mCentralHbKey, CentralMetaMessageKey.class),
                    LoadBalancingManager.getGson().toJson(fcsTakenWithTime,
                            new TypeToken<HashMap<ArrayList<Integer>, Long>>() {
                            }.getType()));

И вот как я десериализую после проверки, является ли тот же объект:

Map<ArrayList<Integer>, Long> incerc = LoadBalancingManager.getGson().fromJson(
                                        record.value(), new TypeToken<HashMap<ArrayList<Integer>, Long>>(){}.getType());

Для сериализации это работает.

I 'Я сделал другие десериализации в том же потоке, и они работают, не могу понять, что не так ...

Я использую регистратор, и моя трассировка стека не показывает никаких ошибок, но я следую за шагами, и здесь это идетпосле возвращения моей десериализации: Ошибка FutureTask

1 Ответ

0 голосов
/ 26 сентября 2018

Дело в том, что у GSON возникают проблемы с попыткой десериализации в объект Long, когда он находится в работающем потоке, все, что мне нужно было сделать, это вручную десериализовать мою строку, добавив часть строки с длинным числом в другую строкуобъект и только после этого бросьте его как Long в мой объект Long. Надеюсь, это поможет кому-то еще.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...