Ни одна из строк, которые я использую в JSON, не может быть десериализована в LocalDateTime с помощью Spring Boot и Jackson 310. Я пробовал все следующее:
Но никто не работает. Мой DTO прост, и я пробовал:
@ApiModel
@Validated
public class DateRange implements Serializable
{
@ApiModelProperty
@NotNull
@JsonFormat( shape = JsonFormat.Shape.ANY, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT" )
protected LocalDateTime start;
@ApiModelProperty
@NotNull
@JsonFormat( shape = JsonFormat.Shape.ANY, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT" )
protected LocalDateTime end;
public DateRange()
{
}
public LocalDateTime getStart()
{
return start;
}
public void setStart(LocalDateTime start)
{
this.start = start;
}
public LocalDateTime getEnd()
{
return end;
}
public void setEnd(LocalDateTime end)
{
this.end = end;
}
@Override
public boolean equals(Object o)
{
if ( this == o )
{
return true;
}
if ( o == null || getClass() != o.getClass() )
{
return false;
}
DateRange range = ( DateRange ) o;
return Objects.equals( start, range.start ) && Objects.equals( end, range.end );
}
@Override
public int hashCode()
{
return Objects.hash( start, end );
}
}
Я отправил JSON:
{
"start": "2017-09-29 00:00:00",
"end": "2017-09-29 00:00:00"
}
Я также попробовал все версии различий, опубликованные выше в маркированном списке.
Что я делаю неправильно?
@ круто да. В ответе на этот пост просто говорится, что если вы используете Jackson 310, вам не нужны специальные десериализаторы. У меня нет настраиваемых десериализаторов




Включите эту зависимость для десериализаторов json:
<dependency>
<groupId>com.fasterxml.jackson.datatype</groupId>
<artifactId>jackson-datatype-jsr310</artifactId>
</dependency>
я уже сделал это. Если вы посмотрите мой пост: with Spring Boot and Jackson 310
Это именно то, что у меня было (за исключением того, что я использую gradle), и это не работает
Вы это уже проверили stackoverflow.com/questions/27952472/…?