Не удалось сохранить поле типа Map‹String, List‹String›› с использованием данных Spring cassandra 2.1.5 RELEASE

У меня есть класс с полем типа Map‹String, List›, я не могу сохранить этот компонент в cassandra. Получение следующей ошибки при попытке вставить объект с помощью шаблона cassandra. Я создал CassandraMappingContext и также установил userTypeResolver.

[Exception in request ] [org.springframework.data.mapping.MappingException: Cannot resolve value type for java.util.Map<java.lang.String,java.util.List<java.lang.String>>.    
at org.springframework.data.cassandra.core.mapping.CassandraMappingContext.lambda$getMapDataType$13(CassandraMappingContext.java:702)
    at org.springframework.data.cassandra.core.mapping.CassandraMappingContext.getDataTypeWithUserTypeFactory(CassandraMappingContext.java:639)
    at org.springframework.data.cassandra.core.mapping.CassandraMappingContext.getMapDataType(CassandraMappingContext.java:694)
    at org.springframework.data.cassandra.core.mapping.CassandraMappingContext.getDataTypeWithUserTypeFactory(CassandraMappingContext.java:639)
    at org.springframework.data.cassandra.core.mapping.CassandraMappingContext.getDataTypeWithUserTypeFactory(CassandraMappingContext.java:587)
    at org.springframework.data.cassandra.core.mapping.CassandraMappingContext.getDataType(CassandraMappingContext.java:547)
    at org.springframework.data.cassandra.core.convert.MappingCassandraConverter.getPropertyTargetType(MappingCassandraConverter.java:725)
    at org.springframework.data.cassandra.core.convert.MappingCassandraConverter.lambda$getTargetType$3(MappingCassandraConverter.java:718)
    at java.util.Optional.orElseGet(Optional.java:267)
    at org.springframework.data.cassandra.core.convert.MappingCassandraConverter.getTargetType(MappingCassandraConverter.java:706)
    at org.springframework.data.cassandra.core.convert.MappingCassandraConverter.getWriteValue(MappingCassandraConverter.java:747)
    at org.springframework.data.cassandra.core.convert.MappingCassandraConverter.writeUpdateFromWrapper(MappingCassandraConverter.java:478)
    at org.springframework.data.cassandra.core.convert.MappingCassandraConverter.write(MappingCassandraConverter.java:383)
    at org.springframework.data.cassandra.core.convert.MappingCassandraConverter.write(MappingCassandraConverter.java:365)
    at org.springframework.data.cassandra.core.QueryUtils.createUpdateQuery(QueryUtils.java:132)
    at org.springframework.data.cassandra.core.CassandraTemplate.update(CassandraTemplate.java:584)
    at org.springframework.data.cassandra.core.CassandraTemplate.update(CassandraTemplate.java:571)

Похоже, значение на карте не может быть ничем иным, как примитивным типом данных. версия весенних данных cassandra 2.1.5RELEASE

но если я напрямую сохраню это поле в db и попытаюсь запустить get API из кода, чтобы получить данные, я смогу правильно получить поле.

Я делаю что-то не так при сохранении данных в коде?

ОБНОВЛЕНИЕ. Попытался добавить @CassandraType(type = Name.MAP, typeArguments = {Name.TEXT, Name.LIST}) поверх поля, но похоже, что нам не разрешено иметь ничего, кроме примитива, для значения в КАРТА.

Также попробовал @CassandraType(type = Name.MAP, typeArguments = {Name.TEXT, Name.TEXT}), но тогда есть некоторые исключения приведения классов


person Mahin    schedule 24.04.2021    source источник
comment
какая схема стола?   -  person Alex Ott    schedule 24.04.2021
comment
команда для создания таблицы create table person ( id varchar PRIMAY KEY, name varchar, additionalinfo map<varchar, frozen<list<varchar>>> );   -  person Mahin    schedule 24.04.2021
comment
@AlexOtt мой класс Java @Data @Table("person") public class Person { @Id private String id; private String name; private Map<String, Liat<String>> additionalinfo; }   -  person Mahin    schedule 24.04.2021
comment
Посмотрите здесь: stackoverflow.com/questions/53294412 / - не уверен в текущем статусе. По сути, должна быть аннотация, в которой говорится, что значение заморожено.   -  person Alex Ott    schedule 24.04.2021
comment
@AlexOtt Я не думаю, что здесь проблема с замороженной аннотацией, это похоже на некоторые проблемы с конвертерами.   -  person Mahin    schedule 15.05.2021