改装2+RxJava+Jackson无声地失败



我正在研究一个Java 8 REST客户端设置,它使用了Reformation2和RxJava。使用GsonConverterFactory服务器时,一切正常。当切换到JacksonConverterFactory时,我根本看不到任何结果(但也不例外)。根据日志,REST调用本身是可以的

GitHub上的完整示例。

默认情况下,改装的JacksonConverterFactory不会忽略未知属性(与例如Feign的JacksonDecoder相反)。

因此,有必要配置自定义ObjectMapper,其中FAIL_ON_UNKNOWN_PROPERTIES特征设置为false:

ObjectMapper jacksonMapper = new ObjectMapper().configure(FAIL_ON_UNKNOWN_PROPERTIES, false);
Retrofit retrofit = new Retrofit.Builder()
        .baseUrl("https://api.github.com/")
        .addCallAdapterFactory(RxJavaCallAdapterFactory.create())
        .addConverterFactory(JacksonConverterFactory.create(jacksonMapper))
        .build();

最新更新