问题描述
我想将客户端的POST请求发送到后端,在POJO中,我有两个字段LocalDate和LocalDateTime,如下所示:
@JsonDeserialize(using = LocalDateTimeDeserializer.class)
@JsonFormat(shape = JsonFormat.Shape.STRING,pattern = "dd.MM.yyyy - hh:mm:ss")
private LocalDateTime createdTimestamp;
@JsonDeserialize(using = LocalDateDeserializer.class)
@JsonFormat(shape = JsonFormat.Shape.STRING,pattern = "dd.MM.yyyy")
private LocalDate expiredDate;
客户端将发送带有以下内容的请求:
{
"expiredDate" : "01.01.2020","createdTimestamp" : "01.02.2020 - 10:10:10"
}
但是,在后端,我有一个例外:
java.lang.NoSuchMethodError:
com.fasterxml.jackson.databind.DeserializationContext.handleWeirdStringValue(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
如果我将createdTimestamp
放在请求的正文之外,那么它就起作用了。似乎只有注释@JsonDeserialize(using = LocalDateDeserializer.class)
有效,而@JsonDeserialize(using = LocalDateTimeDeserializer.class)
无效。
有人知道为什么会这样吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)