Datos de spring mongodb y kotlin

Me encuentro con un problema cuando uso los datos de spring mongodb togheter con kotlin. Cuando trato de leer objects de mongodb, me sale un error al quejarme de que mis classs de datos no tienen un constructor no-args pnetworkingeterminado. Puedo resolver esto dando a cada campo un valor en mi class de datos, por lo que el comstackdor generará un constructor no-args por defecto. Por supuesto, realmente no quiero hacer esto.

Sé que hay un module de jackson kotlin y está incluido en mi file maven. Funciona para deserializar los objects que obtengo sobre http, así que sé que la spring lo recoge. Sin embargo, parece que los datos de spring mongodb no utilizan el asignador de objects jackson?

¿Hay alguna manera de que pueda usar el mapeador de objects jackson en mongodb de datos de spring o solucionar el problema de no tener un constructor no args?

    Ahora hay un complemento No-Arg . Puede agregar este complemento en su script de compilation Gradle o Maven y ejecutar su código sin text repetitivo o valores "pnetworkingeterminados" para sus vars.

    Ejemplo muy simple con Gradle:

    agregar complemento a build.grade

    buildscript { ext { kotlinVersion = '1.1.2' } repositories { mavenCentral() } dependencies { classpath("org.jetbrains.kotlin:kotlin-noarg:${kotlinVersion}") } } apply plugin: "kotlin-noarg" // apply "kotlin-jpa" for JPA related annotation noArg { // define annotation, where you need an empty custructor annotation("org.springframework.data.mongodb.core.mapping.Document") } 

    Crea tu documento

     @Document(collection = "simpleDoc") class SimpleDocument(@Id val id: String, @Field val name: String) 

    Utilice Spring-Data-REST para crear una inserción

     curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/hal+json' -d '{"name":"awesome"}' 'http://localhost:8080/docs' 

    Lee tu documento

     curl -X GET --header 'Accept: application/hal+json' 'http://localhost:8080/docs/59284d508bc7ee0b4c8fe293'