Десериализация данных, загруженных микросервисом A в Hazelcast IMap в микросервисе B.JAVA

Программисты JAVA общаются здесь
Anonymous
Десериализация данных, загруженных микросервисом A в Hazelcast IMap в микросервисе B.

Сообщение Anonymous »

В моем проекте есть 2 микросервиса A и B.
A поддерживает кеш в Hazelcast, значения которого представляют собой класс, объявленный в A.
Теперь, когда я пытаюсь прочитать значения вышеуказанного кеша в B, я получаю NoClassFoundException, поскольку
он пытается загрузить класс объявлено в A.
Есть ли способ обойти это?

Например, прочитать значение byte[] напрямую из Hazelcast?

Или запретить Hazelcast десериализовать byte[] с помощью моих собственных десериализаторов?
Я пытался вызвать защищенный метод getInternal(Object key) с использованием отражения, поскольку он возвращает объект раньше десериализация. Но он объявлен в MapProxySupport.class, который является частным классом пакета, расширенным MapProxyImpl.class.
Итак, использование приведенного ниже кода вернуло исключение NoSuchMethodException

Код: Выделить всё

MapProxyImpl.class.getMethod("getInternal", Object.class);
Сообщите мне, есть ли способ вызвать защищенные методы суперкласса посредством отражения или любым другим способом.
P.S: я не могу объявить класс в библиотеке и использовать его в обеих службах.>

Вернуться в «JAVA»