Handler dispatch failed; nested exception is java.lang.IncompatibleClassChangeError
Handler dispatch failed; nested exception is java.lang.IncompatibleClassChangeError包含【Java8 中LocalDateTime、LocalDate】等属性的对象在JSON格式化过程中可能会出现的异常异常复现:在将包含LocalDateTime字段类型的Java对象转成JSON时,普遍就是使用com.alibaba
·
Handler dispatch failed; nested exception is java.lang.IncompatibleClassChangeError包含【Java8 中LocalDateTime、LocalDate】等属性的对象在JSON格式化过程中可能会出现的异常
- 异常复现:在将包含LocalDateTime字段类型的Java对象转成JSON时,普遍就是使用com.alibaba.fastjson对LocalDateTime处理出现的错误:
org.springframework.web.util.NestedServletException:
Handler dispatch failed; nested exception is java.lang.IncompatibleClassChangeError:
Found interface java.time.chrono.ChronoLocalDateTime, but class was expected
- 我的实际场景
@Data
@EqualsAndHashCode
@Accessors(chain = true)
@TableName("t_xxxx_client_info")
public class ClientInfo {
@TableId(type = IdType.AUTO)
private Long id;
//客户端编码
private Long clientCode;
@TableField("`desc`")
private String desc;
private Boolean enabled;
private Boolean deleted;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private LocalDateTime createTime;
//添加这个是想着在将对象存储到Redis时,指定序列化和反序列化格式
//实际是,Redis在注册Bean时有添加序列化相关操作需要的配置,比如jackson2等
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private LocalDateTime updateTime;
}
- 解决方案:
更换pom里面 com.alibaba.fastjson版本
原始版本:
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.1.28</version>
</dependency>
更换后如下:
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.68</version>
</dependency>
替换后就是Maven的几个操作了,clean。。。
如有错误, 欢迎大佬留言指正…
希望能帮到同学你…
此处为我实际场遇到问题,非绝对解决办法,
Bye Bye~~
更多推荐
已为社区贡献1条内容
所有评论(0)