Переопределение преобразований типов массивов (списков) в Spring Data R2DBC - PullRequest
0 голосов
/ 13 июня 2019

Я использую Postgres в качестве источника данных и создал собственный конвертер Spring для свойства, которое содержит список моих пользовательских объектов:

@Slf4j
@WritingConverter
@AllArgsConstructor
public class CustomObjectListToStringConverter implements Converter<List<CustomObject>, String> {

    @Override
    public String convert(@Nonnull List<CustomObject> source) {
        try {
            return objectMapper.writeValueAsString(source);
        } catch (JsonProcessingException e) {
            log.error("Error occurred while serializing list of CustomObject to JSON.", e);
        }
        return "[]";
    }

}

Преобразование проходит гладко, но IllegalArgumentException повышенов getArrayType методе класса PostgresArrayColumns, потому что мой пользовательский тип не является простым типом.

Есть ли способ обойти этого охранника за какое-то имущество?

1 Ответ

1 голос
/ 18 июня 2019

В настоящее время переопределение невозможно, поскольку DatabaseClient рассматривает типизированные коллекцией значения как значения для полей массива Postgres. Пожалуйста, отправьте заявку на https://github.com/spring-projects/spring-data-r2dbc/, чтобы решить эту проблему.

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