2016-04-08 68 views
0

我在调查Java 8 REST客户端安装,使用Retrofit2和RxJava。当使用GsonConverterFactory时,所有事情都按预期工作。当切换到JacksonConverterFactory时,我根本没有看到任何结果(但也没有例外)。根据日志,REST调用本身是可以的。Retrofit2 + RxJava + Jackson默默无闻

关于GitHub的完整示例。

+0

你检查TestSubscriber错误事件? – zsxwing

+0

感谢您的指针! – netzwerg

回答

1

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

因此,有必要配置自定义ObjectMapperFAIL_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(); 
相关问题