java 不能反序列化_不能将“Java.Lang.Studio”实例反序列化到StaskObl对象令牌中

我收到下面的错误消息,有人能帮助或建议如何最好地调试它吗?

无法反序列化的实例

java.lang.String

超出起始值的对象

[来源:(pushbackinputstream)处的令牌;行:1,列:37610]

(通过参考链:

CopyToList[[产品] ] -gt;java. U.L.AyayList[ 23 ] -&G.M.Mult.产品[“价格”] -& com;COM.价格(“现在”))

我正在尝试从RESTAPI调用反序列化产品对象。在我添加代码来反序列化price子类之前,代码一直工作得很好。如下所示:

"price": {

"was": "",

"then1": "",

"then2": "",

"now": "59.00",

"uom": "",

"currency": "GBP"

},

我的价格POJO如下:

public class Price {

@JsonProperty("was")

String was;

@JsonProperty("then1")

String then1;

@JsonProperty("then2")

String then2;

@JsonProperty("now")

String now;

@JsonProperty("uom")

String uom;

@JsonProperty("currency")

String currency;

public Price() {

//blank constructor for JSON

}

@Override

public String toString() {

return "Price{" +

"was='" + was + '\'' +

", then1='" + then1 + '\'' +

", then2='" + then2 + '\'' +

", now='" + now + '\'' +

", uom='" + uom + '\'' +

", currency='" + currency + '\'' +

'}';

}

}

我编写了一个JUnit测试来尝试模拟错误,但它在我的测试中有效,

@Test

public void shouldConvertJsonProductListIntoPrice() {

ObjectMapper objectMapper = new ObjectMapper();

String content3 = "{\"products\": [{\"productId\": \"3525085\",\"title\": \"hush Tasha Vest Dress\", " +

"\"price\": {\"was\": \"\",\"then1\": \"\",\"then2\": \"\",\"now\": \"59.00\",\"uom\": \"\",\"currency\": \"GBP\"}, " +

"\"colorSwatches\": [{\"basicColor\": \"Red\",\"skuId\": \"237494589\"},{\"basicColor\": \"Blue\",\"skuId\": \"237494562\"}] " +

"}]}";

JavaType valueType = objectMapper.constructType(ProductList.class);

ProductList readValue;

try {

readValue = objectMapper.readValue(content3, valueType);

assertEquals("3525085", readValue.getProductList().get(0).productId);

assertEquals("hush Tasha Vest Dress", readValue.getProductList().get(0).title);

assertEquals("", readValue.getProductList().get(0).price.then1);

assertEquals("59.00", readValue.getProductList().get(0).price.now);

assertEquals("Blue", readValue.getProductList().get(0).colorSwatches[1].basicColor);

assertEquals("237494562", readValue.getProductList().get(0).colorSwatches[1].skuId);

} catch (Exception e) {

e.printStackTrace();

fail();

}

}

如果我对“now”字段进行注释,那么我的restapi调用工作得很好,我看不到异常。

所以看起来“now”字段有问题,我注意到它试图将“59.00”转换为字符串。这可能是fasterXML转换器的问题吗?我需要帮忙吗?

产品类如下(尽管这是我从API调用中接收到的字段列表减少了很多)。

public class Product {

@JsonProperty("productId")

String productId;

@JsonProperty("title")

String title;

@JsonProperty("colorSwatches")

ColorSwatch [] colorSwatches;

@JsonProperty("price")

Price price;

public Product(){

// blank required for Jackson

}

public Product(String productId, String title, ColorSwatch[] colorSwatches, Price price){

this.productId = productId;

this.title = title;

this.colorSwatches = colorSwatches;

this.price = price;

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/288900.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Android Studio开发基础之启动Service,并通过从Activity向Service传递数据

本实例演示启动Service,并通过从Activity向Service传递数据,新建一个Service,并敲如下代码: package com.example.lhb.startservice;import android.app.Service; import android.content.Intent; import android.os.IBinder; imp…

AOT和单文件发布对程序性能的影响

前言这里先和大家介绍一下.NET一些发布的历史,以前的.NET框架原生并不支持最终编译结果的单文件发布(需要依赖第三方工具),我这里新建了一个简单的ASP.NET Core项目,发布以后的目录就会像下图这样,里面包含…

均分纸牌(经典贪心)

1 题目描述 有N堆纸牌,编号分别为1,2,…,N。每堆上有若干张,但纸牌总数必为N的倍数。可以在任一堆上取若干张纸牌,然后移动。 移牌规则为:在编号为1堆上取的纸牌,只能移到编号为2的堆上;在编号为N的堆上取的纸牌,只能移到编号为N−1的堆上;其他堆上取的纸牌,可以移…

Some projects cannot be imported because they already exist in the workspace

1、Some projects cannot be imported because they already exist in the workspace2、Some projects were hidden because they exist in the workspace directory有时候eclipse或者myeclipse导入项目的时候会发生上面两个错误,IDE不允许我们导入。具体原因是在ID…

shell变量/环境变量和set/env/export用法_转

转自:shell环境变量以及set,env,export的区别 一.shell环境变量的分类以及set env export的区别: set:显示(设置)shell变量,包括的私有变量以及用户变量。不同类的shell有不同的私有变量 bash,ksh,csh每中shell私有变量都不一样。 env:显示(设置)用户变…

【C语言简单说】十:小结

([]!!) ㄟ(≥◇≤)ㄏ(&#xffe3;ε(#&#xffe3;) ∑( △ |||)︴ 一言不合发表情。。。 这节我们来做一个小菜单&#xff0c;然后判断我们选择的是啥东西&#xff0c;好了上代码&#xff1a; #include<stdio.h> #include<stdlib.h> int main() {int a1;prin…

Android Studio开发基础之动态注册与注销BroadcastReceiver

1、New→Other→BroadcastReceiver package com.example.lhb.startservice;import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.widget.Toast;public class MyReceiver extends BroadcastReceiver {pu…

python每行输出5个数_python打印杨辉三角及输出第m行第k个数

1.打印杨辉三角及输出第m行第k个数1.计算到m行&#xff0c;打印出k项第m行有m项&#xff0c;m是正整数&#xff0c;因此k一定不会大于m&#xff0c;这个需求需要保存m行的数据&#xff0c;那么可以使用一个嵌套结构[[],[],[]]mint(input(行>>>))kint(input(第几个数&g…

无法识别的属性“targetFramework”。请注意属性名称区分大小写。

asp.net部署出错(targetFramework无法识别) 今天尝试着部署了一个基于Framework4.0的web项目&#xff0c;途中发生了一点小小的意外。报的错误是Web.Config配置文件中的 targetFramework属性无法识别。后来查了一下发现在站点中部署的Web使用的是基于.Net Framework2.0的Applic…

java解析xml生成表格_JAVA读取XML文件并解析 以及 JAVA生成文本文件输出

废话不多说&#xff0c;直接上代码及说明吧&#xff01;package Dao;import java.io.File;import java.util.ArrayList;import java.util.List;import javax.xml.parsers.DocumentBuilder;import javax.xml.parsers.DocumentBuilderFactory;import org.w3c.dom.Document;import…

.NET点滴:说说Middleware构造中获取不到Scoped服务的问题

今天小桂问我&#xff1a;“为什么中间件的构造函数里不能使用scope的生命周期类型啊&#xff1f;”&#xff0c;那就用实例来得到答案吧&#xff0c;先看小桂说的情况&#xff0c;是报错的&#xff1a;var builder WebApplication.CreateBuilder(args);builder.Services.AddS…

模式识别之分类---数学贝叶斯方法

http://blog.sina.com.cn/s/blog_6163bdeb0102ehh1.html http://www.zdh1909.com/html/Verilog/29941.html

给定0~N之间的N个数字(大于等于0,小于N,不重复)进行按小到大排列(不用其它的经典排序算法)

1 问题 比如我们给定0~N之间的N个数字(大于等于0,小于N,并且不重复)进行按小到大排列,比如N是5,我们给定数据{3, 2, 1, 0, 4},我们按照从小到大的排名最后就是{0, 1, 2, 3, 4} 2 思路 我们遍历数组,下标为i,我们把i和a[i]进行对比,如果不想等我们就进行交换a[i]和a[a[i]]的值…

【C语言简单说】十一:switch 补

昨天丧心病狂的更新了十节。我都懵逼了。。。 *~ (&#xffe3;﹏&#xffe3;) ** 今天继续&#xff0c;来说一下。。。那个。。。另外一个分支switch。 直接上代码&#xff0c;学过了if的孩子就会觉得很简单的了&#xff1a; #include<stdio.h> #include<stdlib.h…

retain、strong、weak、assign区别

1. 假设你用malloc分配了一块内存&#xff0c;并且把它的地址赋值给了指针a&#xff0c;后来你希望指针b也共享这块内存&#xff0c;于是你又把a赋值给&#xff08;assign&#xff09;了b。此时a 和b指向同一块内存&#xff0c;请问当a不再需要这块内存&#xff0c;能否直接释放…

Java游戏有易筋经_当年武侠游戏中绝世秘籍易筋经!重置游戏几十次,玩家才终于找到?...

原标题&#xff1a;当年武侠游戏中绝世秘籍易筋经&#xff01;重置游戏几十次&#xff0c;玩家才终于找到&#xff1f;在金庸的笔下产生过诸多绝世武学&#xff0c;其中最常被人提及的莫过于少林绝学易筋经。这部由达摩祖师于嵩山少林寺面壁9年留下的武学经书&#xff0c;亦是武…

python路径怎么找windows_如何查看 windows 中 Python安装路径

答疑 qq&#xff1a;3081655843公号&#xff1a; 天枢子python课堂windows平台如果python已经安装好了的话&#xff0c;打开命令行窗口&#xff0c;输入python命令回车&#xff0c;能够进入到python的命令行界面。这个时候我们能够确定的就是&#xff0c;python的安装路径一定被…

微软是如何解决 PC 端程序多开问题的——内部实现

前言上次&#xff0c;我们通过《引用 Microsoft.VisualBasic 解决程序多开的问题》。虽然它非常简单&#xff0c;但是仅适用于 WinForm 应用程序&#xff0c;而且还需要引用不常用的Microsoft.VisualBasic类库。因此&#xff0c;我们决定深挖一下&#xff0c;看看具体是如何实现…

C#常用命名空间

MSDN上的C#.NET Framework类库文档目录树&#xff0c;本人觉得有点不得要领&#xff0c;于是参考搜到的结果简单整理如下&#xff1a; 一、基础命名空间 System 处理内建数据、数学计算、随机数的产生、环境变量、垃圾回收器及一些常见的异常和特征. System.Collections 包含了…

svn之回滚到指定版本

1 问题 我们用svn下载了最新的代码&#xff0c;但是我们需要回退到制定的版本 2 操作 我们先svn showlog 找到对应的版本号 如果用的是svn图形界面客户端 我们点击关联svn项目的鼠标右键&#xff0c;然后有个update to reversion 写上相应的版本即可