Tag: jongo

在Kotlin中,为什么jackson在某些情况下未能解组未注释的对象,而不是在其他情况下

我使用Kotlin和Jongo来访问MongoDB。 Jongo使用Jackson来序列化/反序列化对象,以便从MongoDB保存和读取它们。 我使用Jackson-Kotlin模块来帮助使用构造函数序列化Kotlin数据类。 下面是一个序列化好的数据类的例子: data class Workflow ( @field:[MongoId MongoObjectId] @param:MongoId var id: String? = null, val name: String, val states: Map ) 下面是一个不能反序列化的类的例子: data class Session ( @field:[MongoObjectId MongoId] @param:MongoId var id: String? = null, var status: CallStatus, var currentState: String, var context: MutableMap, val events: MutableMap ) Jongo抛出了以下例外,因为Jackson的反序列化失败了: org.jongo.marshall.MarshallingException: Unable to unmarshall result […]

注释Kotlin中的属性时,注释的默认目标是什么?

Kotlin中的注释可以具有不同的使用地点目标,如下所述: https : //kotlinlang.org/docs/reference/annotations.html#annotation-use-site-targets 我的问题是:当use-site没有明确定义的时候,像下面这个例子那样在注释一个类的属性的时候默认的目标是什么? class Test { @SomeAnnotation var someProperty: String? = null } 背景 我正在尝试Jongo作为Kotlin中的MongoDB客户端,并注意到id字段的问题。 Jongo没有正确映射id属性,如下所示: @MongoId @MongoObjectId var id: String? = null 这些注释只是Jackson的元注释。 但是,当我注释这样的属性,它似乎工作,指示使用现场问题: @field:[MongoId MongoObjectId] var id: String? = null 我期望@field是默认的使用网站,但它似乎不是。

在Kotlin中,为什么杰克逊在某些情况下未能解组未注释的对象,而不是在其他情况下

我使用Kotlin和Jongo来访问MongoDB。 Jongo使用Jackson来序列化/反序列化对象,以便从MongoDB保存和读取它们。 我使用Jackson-Kotlin模块来帮助使用构造函数序列化Kotlin数据类。 下面是一个序列化好的数据类的例子: data class Workflow ( @field:[MongoId MongoObjectId] @param:MongoId var id: String? = null, val name: String, val states: Map<String, State> ) 下面是一个不能反序列化的类的例子: data class Session ( @field:[MongoObjectId MongoId] @param:MongoId var id: String? = null, var status: CallStatus, var currentState: String, var context: MutableMap<String, Any?>, val events: MutableMap<String, Event> ) Jongo抛出了以下例外,因为Jackson的反序列化失败了: org.jongo.marshall.MarshallingException: Unable […]