首页 / JAVA / Java异常处理008:RestTemplate请求Could not extract response: no suitable HttpMessageConverter found for res
Java异常处理008:RestTemplate请求Could not extract response: no suitable HttpMessageConverter found for res
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Java异常处理008:RestTemplate请求Could not extract response: no suitable HttpMessageConverter found for res,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3009字,纯文字阅读大概需要5分钟。
内容图文
![Java异常处理008:RestTemplate请求Could not extract response: no suitable HttpMessageConverter found for res](/upload/InfoBanner/zyjiaocheng/620/fc7d0d2749cf45fd9d4f99ec2cbc075c.jpg)
Java异常处理008:RestTemplate请求Could not extract response: no suitable HttpMessageConverter found for response type.... content type [text/html;charset=UTF-8]异常
start
1-异常日志:
2020-12-02 16:42:39.386 ERROR 6180 --- [nio-8080-exec-2] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.web.client.UnknownContentTypeException: Could not extract response: no suitable HttpMessageConverter found for response type [class com.tyj.study.rest_template.ResponseB] and content type [text/html;charset=UTF-8]] with root cause org.springframework.web.client.UnknownContentTypeException: Could not extract response: no suitable HttpMessageConverter found for response type [class com.tyj.study.rest_template.ResponseB] and content type [text/html;charset=UTF-8] at org.springframework.web.client.HttpMessageConverterExtractor.extractData(HttpMessageConverterExtractor.java:126) ~[spring-web-5.2.8.RELEASE.jar:5.2.8.RELEASE] at org.springframework.web.client.RestTemplate$ResponseEntityResponseExtractor.extractData(RestTemplate.java:998) ~[spring-web-5.2.8.RELEASE.jar:5.2.8.RELEASE] at org.springframework.web.client.RestTemplate$ResponseEntityResponseExtractor.extractData(RestTemplate.java:981) ~[spring-web-5.2.8.RELEASE.jar:5.2.8.RELEASE] at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:741) ~[spring-web-5.2.8.RELEASE.jar:5.2.8.RELEASE] at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:674) ~[spring-web-5.2.8.RELEASE.jar:5.2.8.RELEASE] at org.springframework.web.client.RestTemplate.getForEntity(RestTemplate.java:342) ~[spring-web-5.2.8.RELEASE.jar:5.2.8.RELEASE]
......
2-异常原因:即RestTemplate请求不支持content type [text/html;charset=UTF-8]类型
3-Springboot注入RestTemplate类
追踪RestTemplate 实例化过程发现默认的RestTemplate 只支持application/json格式,所以需要手动补充text/html格式
@Bean("restTemplate") @Primary public RestTemplate restTemplate(){ RestTemplate restTemplate = new RestTemplate(); return restTemplate; } public RestTemplate() { ...... if (jackson2Present) { this.messageConverters.add(new MappingJackson2HttpMessageConverter()); } ..... } public MappingJackson2HttpMessageConverter() { this(Jackson2ObjectMapperBuilder.json().build()); } public MappingJackson2HttpMessageConverter(ObjectMapper objectMapper) { super(objectMapper, MediaType.APPLICATION_JSON, new MediaType("application", "*+json")); }
4-解决方案
支持text/plan,text/html格式
@Bean("restTemplate") public RestTemplate restTemplate(){ RestTemplate restTemplate = new RestTemplate(); MappingJackson2HttpMessageConverter mappingJackson2HttpMessageConverter = new MappingJackson2HttpMessageConverter(); mappingJackson2HttpMessageConverter.setSupportedMediaTypes(Arrays.asList( MediaType.TEXT_HTML, MediaType.TEXT_PLAIN)); restTemplate.getMessageConverters().add(mappingJackson2HttpMessageConverter); return restTemplate; }
end
内容总结
以上是互联网集市为您收集整理的Java异常处理008:RestTemplate请求Could not extract response: no suitable HttpMessageConverter found for res全部内容,希望文章能够帮你解决Java异常处理008:RestTemplate请求Could not extract response: no suitable HttpMessageConverter found for res所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。