Can not deserialize instance of java.lang.Boolean out of START_OBJECT token

在使用MQ发送包含实体类的消息时,接收方反序列化遇到问题,报'Can not deserialize instance of java.lang.Boolean out of START_OBJECT token'错误。通过在实体类的Long字段上添加@JsonSerialize和@JsonDeserialize注解,分别指定LongJsonSerializer和LongJsonDeserializer,成功解决了反序列化问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用mq发消息时,消息体使用一个实体类接收,消息接收方反序列化时总是报错:

2019-10-10 13:29:34.609 [mro: e0ff3fbce8cfa095][http-nio-8002-exec-7] ERROR com.runlion.sat.tools.handler.ExceptionHandler - >>>>>>>>> 全局异常 JSON parse error: Can not deserialize instance of java.lang.Boolean out of START_OBJECT token; nested exception is com.fasterxml.jackson.databind.JsonMappingException: Can not deserialize instance of java.lang.Boolean out of START_OBJECT token
 at [Source: java.io.PushbackInputStream@27ba128; line: 1, column: 1] >>>>>>>>>>>>>>

1. 发送消息

//发送占用库存消息
        OccupyTypeDTO occupyTypeDTO = new OccupyTypeDTO();
        occupyTypeDTO.setId(sendOrderMainId);
        occupyTypeDTO.setType(1);
        occupyTypeDTO.setUserId(LoginUserUtil.getLoginUserId());
        MqDTO mqDTO = new MqDTO();
        mqDTO.setMqTypeEnum(OCCUPYSTRATEGY);
        mqDTO.setData(JSONObject.toJSONString
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值