当前位置:   article > 正文

Could not extract response: no suitable HttpMessageConverter found for response type_feign.codec.decodeexception: could not extract res

feign.codec.decodeexception: could not extract response: no su

Could not extract response: no suitable HttpMessageConverter found for response type [class com.XXX] and content type [text/plain]

1. 报错

feign.codec.DecodeException: Could not extract response: no suitable HttpMessageConverter found for response type [class com.XXX] and content type [text/plain]
at feign.SynchronousMethodHandler.decode(SynchronousMethodHandler.java:169)
at feign.SynchronousMethodHandler.executeAndDecode(SynchronousMethodHandler.java:133)
at feign.SynchronousMethodHandler.invoke(SynchronousMethodHandler.java:76)
at feign.ReflectiveFeign$FeignInvocationHandler.invoke(ReflectiveFeign.java:103)``
2、解决方案
2.1

public class ExtMappingJackson2HttpMessageConverter extends MappingJackson2HttpMessageConverter {
    /*解决no suitable HttpMessageConverter found for response type [class com.XXX] and content type [text/plain]*/
    public ExtMappingJackson2HttpMessageConverter(){
        List<MediaType> mediaTypes = new ArrayList<>();
        mediaTypes.add(MediaType.TEXT_PLAIN);
        setSupportedMediaTypes(mediaTypes);// tag6
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

2.2

@Configuration
public class ConfigBean
{
    @Bean
    public Decoder feignDecoder() {
        return new ResponseEntityDecoder(new SpringDecoder(feignHttpMessageConverter()));
    }
    public ObjectFactory<HttpMessageConverters> feignHttpMessageConverter() {
        final HttpMessageConverters httpMessageConverters = new HttpMessageConverters(new ExtMappingJackson2HttpMessageConverter());
        return new ObjectFactory<HttpMessageConverters>() {
            @Override
            public HttpMessageConverters getObject() throws BeansException {
                return httpMessageConverters;
            }
        };
    }

    @Bean
    RestTemplate restTemplate(){
        RestTemplate restTemplate = new RestTemplate();
        restTemplate.getMessageConverters().add(new ExtMappingJackson2HttpMessageConverter());
        return restTemplate;
    }
}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/813929
推荐阅读
相关标签
  

闽ICP备14008679号