Readaptación con kotlin, incapaz de crear @Body

Hola, me sale el siguiente error:

java.lang.IllegalArgumentException: Unable to create @Body converter for class com.jr.app.models.ExampleData (parameter #1) 

Aquí está mi ExampleData.kt

 data class ExampleData(val id: String, val firstName: String, val secondName: String, val profilImages: String, val info: String) { } 

Mi interfaz de actualización

 interface UsersService { @GET("/usersProfile") fun getAllUsers(): Call<List<ExampleData>> @POST("/usersProfile") fun addUser(@Body exampleData: ExampleData): Call<ResponseBody> } 

function que agrega el usuario

  override fun addUser(user: ExampleData) { val retrofit = Retrofit.Builder().baseUrl(baseUrl).client(httpAuthClient).build(); val userService = retrofit.create(UsersService::class.java); userService.addUser(user).enqueue(callbackResponse); } private val httpAuthClient: OkHttpClient get() { val okHttpClient = OkHttpClient().newBuilder().addInterceptor { chain -> val originalRequest = chain.request() val builder = originalRequest.newBuilder().header(authorizeHeader, Cnetworkingentials.basic(userName, password)) val newRequest = builder.build() chain.proceed(newRequest) }.build() return okHttpClient } 

Agregue la dependencia gradle a su proyecto:

 compile 'com.squareup.retrofit2:converter-gson:VERSION_OF_RETROFIT' 

Cuando construya una instancia de actualización, agregue esta línea:

 .addConverterFactory(GsonConverterFactory.create()) 

En la construcción de su proyecto, el object de modificación tendrá el siguiente aspecto:

 val retrofit = Retrofit.Builder() .baseUrl(baseUrl) .client(httpAuthClient) .addConverterFactory(GsonConverterFactory.create()) .build() 

Creo que esto no tiene nada que ver con Kotlin sino con su configuration de Retrofit y su class de datos ExampleData.

Retrofit no tiene idea de cómo serializar su instancia de ExampleData a JSON. Builder#addConverterFactory agregar una fábrica de convertidores específica al crear una instancia de cliente de Retrofit (consulte Builder#addConverterFactory método Builder#addConverterFactory para get más información).

  • Obtención de class no encontrada Excepción al usar KotlinJsonAdapterFactory () en Moshi 1.5 con Kotlin
  • Android Retrofit + SimpleXmlConverter con entidad vacía
  • ¿Cómo crear una llamada asincrónica utilizando modificaciones y observaciones en Kotlin?
  • Retrofit + Deserialization GSON + Relación de reino
  • Android 2 Retrofit llamada sincrónica
  • Dagger2 no puede acceder a las anulaciones. javax.annotation.Nullable not found
  • Pass facebook AccessToken por Retrofit
  • Definir el tipo de retorno de modificación utilizando la interfaz en lugar de la class
  • Cómo llenar una vista de list usando Kotlin, retroadaptación y RXjava
  • java.lang.NoClassDefFoundError: com.example.api.retrofit.AuthenticationInterceptor $ intercepte $ 1
  • Retrofit2 + SimpleXML en Kotlin: MethodException: la anotación debe marcar un set o método get