Java 使用Spring数据cassandra将MapOf-UserDefinedType映射到cassandra中的POJO

Java 使用Spring数据cassandra将MapOf-UserDefinedType映射到cassandra中的POJO,java,spring,cassandra,spring-annotations,spring-data-cassandra,Java,Spring,Cassandra,Spring Annotations,Spring Data Cassandra,我在cassandra中有以下用户定义的类型: CREATE TYPE key( name text, created_time timestamp ); 下表列出了这一点: CREATE TABLE keys( id uuid, keys map<text, frozen<list<key>>> ); 对于键 @Table(value = "keys") public class MyKeys { @Primary

我在cassandra中有以下用户定义的类型:

CREATE TYPE key(
    name text,
    created_time timestamp
);
下表列出了这一点:

CREATE TABLE keys(
    id uuid,
    keys map<text, frozen<list<key>>>
);
对于

@Table(value = "keys")
public class MyKeys {
    @PrimaryKey(value = "id")
    private UUID id;
    @Column(value = "keys")
    private Map<String, List<Key>> keys;
}
@表(value=“keys”)
公共类MyKey{
@PrimaryKey(value=“id”)
私有UUID;
@列(value=“keys”)
私有地图密钥;
}
不幸的是,当我尝试插入
MyKeys
的实例时,出现以下错误:

org.springframework.dao.InvalidDataAccessApiUsageException:实体[com.utx.dao.tables.MyKeys]中[interface java.util.Map]类型的属性[keys]的集合中只允许使用基元类型


Spring数据Cassandra映射器是否不能处理用户定义类型的映射?如果不能,我的问题是否有解决方案?

这是在
Map
类型支持中针对Apache Cassandra的一组Spring数据。@MP911您知道任何解决方法吗?尝试在
字段顶部添加
@FrozenValue
注释,以解决您可以创建自己的数据类型的问题,该数据类型由映射键和映射值组成。然后使用用户定义类型的列表作为dto中的字段。
@Table(value = "keys")
public class MyKeys {
    @PrimaryKey(value = "id")
    private UUID id;
    @Column(value = "keys")
    private Map<String, List<Key>> keys;
}