El manejo de Json y XML de respuesta en Retrofit - Android utilizando addConverterFactory

Estoy esperando tanto json y xml de la respuesta en mi aplicación. Retrofit 2.0 le permite añadir múltiples Convertidor de Fábricas para este tipo de situaciones.

Pero parece que el orden es de suma importancia aquí. La adición de JacksonConverterFactory por encima de SimpleXmlConverterFactory hace Retrofit aceptar sólo la respuesta Json y lanza la excepción cuando se encuentra con XML y viceversa.

A continuación es un fragmento de código de cómo agregar varios addConverterFactory para su Reconversión del Generador.

.addConverterFactory(JacksonConverterFactory.create(objectMapper))
                .addConverterFactory(SimpleXmlConverterFactory.create())

<<< editar

Cambiado el código anterior a este, pero aún no funciona:

return new Retrofit.Builder()
                .client(clientBuilder.build())
                .baseUrl(BuildConfig.API_ENDPOINT)
                .addCallAdapterFactory(unAuthorizedHandlingCallAdapterFactory)
                .addCallAdapterFactory(RxErrorHandlingCallAdapterFactory.create())
                .addConverterFactory(new QualifiedTypeConverterFactory(JacksonConverterFactory.create(objectMapper), SimpleXmlConverterFactory.create()))
                .build();

edit2

Agregar el tipo de respuesta fue la clave @GET("/") @Xml

0
2019-09-17 23:09:49
fuente
0 respuestas

Vea otras preguntas sobre etiquetas