【FeignClient报错】Cannot deserialize value of type``from Object value (token `JsonToken.START_OBJECT`)
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                【FeignClient报错】Cannot deserialize value of type``from Object value (token `JsonToken.START_OBJECT`)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.                        
                                1. 問題描述
@FeignClient(name = "dataServiceQueryInterface", url = "${url}:${port}") public interface DataServiceQueryInterface {@GetMapping("/dataReport/getSysAreaAllList")List<SysArea> getSysAreaAllList() throws Exception; }使用接口獲取數據時報錯:
Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is feign.codec.DecodeException: Error while extracting response for type [java.util.List<com.xxx.datamatch.datacar.entity.SysArea>] and content type [application/json;charset=UTF-8]; nested exception is org.springframework.http.converter.HttpMessageNotReadableException: JSON parse error: Cannot deserialize value of type `java.util.ArrayList<com.xxx.datamatch.datacar.entity.SysArea>` from Object value (token `JsonToken.START_OBJECT`); nested exception is com.fasterxml.jackson.databind.exc.MismatchedInputException: Cannot deserialize value of type `java.util.ArrayList<com.xxx.datamatch.datacar.entity.SysArea>` from Object value (token `JsonToken.START_OBJECT`)2. 問題方法
試驗 1 添加依賴【無任何效果】
<dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.46</version> </dependency>試驗 2 修改返回類型【不報錯 但是結果數據是字符串 未封裝需要自行解析】
@FeignClient(name = "dataServiceQueryInterface", url = "${url}:${port}") public interface DataServiceQueryInterface {@GetMapping("/dataReport/getSysAreaAllList")String getSysAreaAllList() throws Exception; }最終解決方案 3【將@GetMapping修改為@PostMapping】
@FeignClient(name = "dataServiceQueryInterface", url = "${url}:${port}") public interface DataServiceQueryInterface {@PostMapping("/dataReport/getSysAreaAllList")List<SysArea> getSysAreaAllList() throws Exception; }原因沒有進行深入探究,有知道原因的小伙伴可以分享一下~
總結
以上是生活随笔為你收集整理的【FeignClient报错】Cannot deserialize value of type``from Object value (token `JsonToken.START_OBJECT`)的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: ADT Running Android
- 下一篇: 【转】“线程间操作无效: 从不是创建控件
