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).

  • Retrofit2 Añadir cadena adicional al object Body
  • Retrofit2 + SimpleXML en Kotlin: MethodException: la anotación debe marcar un set o método get
  • Android Kotlin Gson Slow Json Deserialization
  • Los parameters generics Cualquiera de kotlin se convierte en comodines (?)
  • Retrofit se bloquea cuando lanzo una exception en un interceptor
  • HttpException no capturado por onError ()
  • Dagger 2 personalización proporcionado retroadaptación
  • Clase de datos KotlinReflectionInternalError
  • JsonArray a la class de datos de Kotlin con Retrofit (se esperaba BEGIN_OBJECT pero era BEGIN_ARRAY)
  • ¿Cómo crear una llamada asincrónica utilizando modificaciones y observaciones en Kotlin?
  • El parámetro no tiene una coincidencia; SimpleXML