Feign调用报错:No qualifying bean of type ‘org.springframework.boot.autoconfigure.http.HttpMessageConvert
这里写自定义目录标题Feign调用报错解决方法问题原因Feign调用报错在学习Gateway组件的时候,采用了Feign组件调用接口进行JWT权限认证,报出如下错误feign.codec.DecodeException: No qualifying bean of type 'org.springframework.boot.autoconfigure.http.HttpMessageConver
·
Feign调用报错
在学习Gateway组件的时候,采用了Feign组件调用接口进行JWT权限认证,报出如下错误
feign.codec.DecodeException: No qualifying bean of type 'org.springframework.boot.autoconfigure.http.HttpMessageConverters' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
at feign.AsyncResponseHandler.decode(AsyncResponseHandler.java:119) ~[feign-core-10.10.1.jar:na]
Suppressed: reactor.core.publisher.FluxOnAssembly$OnAssemblyException:
Error has been observed at the following site(s):
|_ checkpoint ⇢ org.springframework.cloud.gateway.filter.WeightCalculatorWebFilter [DefaultWebFilterChain]
|_ checkpoint ⇢ org.springframework.boot.actuate.metrics.web.reactive.server.MetricsWebFilter [DefaultWebFilterChain]
|_ checkpoint ⇢ HTTP GET "/java/sayHi" [ExceptionHandlingWebHandler]
解决方法
之前没有遇到过,记录一下。从报错的内容来看是找不到装配的bean,既然找不到就尝试手动注入,代码如下:
@Bean
@ConditionalOnMissingBean
public HttpMessageConverters messageConverters(ObjectProvider<HttpMessageConverter<?>> converters) {
return new HttpMessageConverters(converters.orderedStream().collect(Collectors.toList()));
}
放入configuration注解的配置类中,问题解决。
问题原因
暂时还不知道为什么会发生装配找不到的情况,若有大神知道其中的原因,请打出评论!
更多推荐
已为社区贡献1条内容
所有评论(0)