踩坑背景
基于springcloud全家桶的分布式项目,服务之间基于feignclient来调用;上游服务新起了一条API入参List
排查逻辑
作为一名很菜的老鸟,看到这种报错,也第一时间想到应该是API入参的地方缺少了@RequestBody注解,来定义入参的数据格式是JSON;
- 检查API入参处是否有@RequestBody --- 排除
不是明显的错误,那只好debug了
-
根据报错log找到最可能的地方 断点进入 Tomcat 的 ApplicationFilterChain
-
进入到HttpServlet doPost()方法
-
进入到FrameworkServlet processRequest() 报错了
-
debug进入
-
到此 可以看出 是入参实体找不到 映射报错的原因,但是实体类肯定是没有问题的,所以只能是映射参数的地方
- constructor interface primary default Feignconstructor interface primary default constructors函数primary 12 constructor函数default illegalstateexception java constructor interface primary datasource properties primary failed 39 duplicate primary mysql activerecordexception activerecord can primary understand primary matrix how primary sqlite reset field