解决POSTMAN传参报错,JSON parse error: Cannot deserialize instance of `java.util.ArrayList` out of START_OB

简介: 解决POSTMAN传参报错,JSON parse error: Cannot deserialize instance of `java.util.ArrayList` out of START_OB

前言:使用POSTMAN自测代码以便前后端联调时,发送请求后,BOOM!!!服务器抛了个这样式的东西出来。


Resolved [org.springframework.http.converter.HttpMessageNotReadableException: JSON parse error: Cannot deserialize instance of `java.util.ArrayList` out of START_OBJECT token; nested exception is com.fasterxml.jackson.databind.exc.MismatchedInputException: Cannot deserialize instance of `java.util.ArrayList` out of START_OBJECT token at [Source: (PushbackInputStream); line: 1, column: 1]]



正文:这个异常信息叽里呱啦说了一堆,其实就是在说,JSON解析报错:木有办法反序列化 ArrayList 实例


由上面的异常异常信息,我们先看一下接口的入参的确是ArrayList 属实没问题


@PostMapping("/##")
public RespDto<XYZ> enableSysParam(@RequestBody List<XX> XXList) {
    //xxx
}

再看一下 POSTMAN 传的请求入参JSON串


{
    "xx":[
        {
            "configNo":"10003",
            "configName":"A",
            "value":"99"
        },{
            "configNo":"10034",
            "configName":"B",
            "value":"7"
        },{
            "configNo":"10080",
            "configName":"C",
            "value":"7"
        }
    ]
}

很明显问题就出在这,上一个测试接口的入参格式是ObjectA<List>,所以博主直接把上次POSTMAN测试的拿来用了,可见图省事费大劲。这次的入参格式为List ,更正如下。

[
  {
      "configNo":"10003",
      "configName":"A",
      "value":"99"
  },{
      "configNo":"10034",
      "configName":"B",
      "value":"7"
  },{
      "configNo":"10080",
      "configName":"C",
       "value":"7"
  }


相关文章
|
6月前
|
Android开发
复杂项目即时通讯从android 5升级android x后遗症之解决报错#79 java.io.EOFException Unexpected end of ZLIB input stream-优雅草卓伊凡|bigniu
复杂项目即时通讯从android 5升级android x后遗症之解决报错#79 java.io.EOFException Unexpected end of ZLIB input stream-优雅草卓伊凡|bigniu
393 4
复杂项目即时通讯从android 5升级android x后遗症之解决报错#79 java.io.EOFException Unexpected end of ZLIB input stream-优雅草卓伊凡|bigniu
|
5月前
|
Java API 开发工具
【Azure Developer】Java代码实现获取Azure 资源的指标数据却报错 "invalid time interval input"
在使用 Java 调用虚拟机 API 获取指标数据时,因本地时区设置非 UTC,导致时间格式解析错误。解决方法是在代码中手动指定时区为 UTC,使用 `ZoneOffset.ofHours(0)` 并结合 `withOffsetSameInstant` 方法进行时区转换,从而避免因时区差异引发的时间格式问题。
297 3
|
4月前
|
JSON Java 数据格式
java调用服务报错400
java调用服务报错400
125 6
java调用服务报错400
|
4月前
|
JSON Java 数据格式
java调用服务报错415 Content type ‘application/octet-stream‘ not supported
java调用服务报错415 Content type ‘application/octet-stream‘ not supported
298 6
|
5月前
|
监控 数据挖掘 API
快应用报错Module Error 分包要求 app.json#minPlatformVersion 不小于 1061, 当前值为 21解决方案-优雅草卓伊凡
快应用报错Module Error 分包要求 app.json#minPlatformVersion 不小于 1061, 当前值为 21解决方案-优雅草卓伊凡
169 0
|
11月前
|
运维 Cloud Native Java
postman发起post请求遇到报错:java.io.FileNotFoundException (文件名、目录名或卷标语法不正确。)
遇到bug报错,多猜可能的原因,控制变量反复测试,直至找到问题的关键,然后再思考如何解决或者回避。 博客不应该只有代码和解决方案,重点应该在于给出解决方案的同时分享思维模式,只有思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来
|
JSON Java Maven
在Java中,我们可以使用第三方库来解析JSON数据
在Java中,我们可以使用第三方库来解析JSON数据。这里以常用的Jackson库为例,演示如何解析JSON数据。
258 1
|
JSON Java Maven
|
JSON Java API
在 Java 中解析 JSON ArrayList 的详细指南
【8月更文挑战第23天】
595 1