SNAPSHOT_SERIALIZATION_ERROR Дублированная собственность JaVers - PullRequest
0 голосов
/ 24 января 2020

Когда я создаю объект, он фиксирует его правильно, однако, когда я редактирую его, я получаю следующее исключение:

12: 32: 20.244 [http-nio-8082-exe c - 9] ОШИБКА oa c. c. C. [. [. [. [DispatcherServlet] - Servlet.service () для сервлета [dispatcherServlet] в контексте с путем [] вызвала исключение [Ошибка обработки запроса; вложенным исключением является JaversException SNAPSHOT_SERIALIZATION_ERROR: ошибка при сериализации снимка с именем 'com.tesicnor.tcheck.equipment.data.model.Equipment/92849', дублированное свойство 'Field ValueType: String equipmentStatus, объявленное в Detectable'] с причиной root или причиной. javers.common.exception.JaversException: SNAPSHOT_SERIALIZATION_ERROR: ошибка при сериализации снимка «com.tesicnor.tcheck.equipment.data.model.Equipment/92849», дублированное свойство «Field ValueType: String equipmentStatus, объявленное в« Обнаруживаемый »*

1004 * Моя сущность Equipment содержит состояние equipmentStatus, и эта сущность происходит от другой, называемой Detectable, которая также содержит поле equipmentStatus. Однако есть больше полей, где происходит то же самое. Есть идеи, как решить эту ошибку?

1 Ответ

0 голосов
/ 25 января 2020

Когда вы помещаете два поля с одинаковым именем в один класс - вы напрашиваетесь на неприятности. Это антипаттерн. Javers сериализует снимки объектов как Map: propertyName -> propertyValue. Очевидно, что если у вас есть дублированные поля, снимок не может быть правильно сериализован. Попробуйте удалить дублированное поле.

...