Unmarshal JSON -Массив для объекта, игнорируя нулевые значения - PullRequest
0 голосов
/ 01 апреля 2020

Я получаю JSON -объект в виде массива внешнего источника, который выглядит следующим образом: [13823108,"Text1","Text2",null,null,1585730520000,1585753742000,null,null,"COMPLETED",null]

Массив всегда будет иметь null значения в этих позициях, поэтому я бы хотелось бы игнорировать их.

Мой Java объект должен выглядеть следующим образом:

@JsonFormat(shape = JsonFormat.Shape.ARRAY)
public class MyJsonObject {
  private final String id;
  private final String textField1;
  private final String textField2;
  private final Date started;
  private final Date updated;
  private final String status;

  @JsonCreator
  public MyJsonObject(
      @JsonProperty("id") final String id,
      @JsonProperty("textField1") final String textField1,
      @JsonProperty("textField2") final String textField2,
      @JsonProperty("started") final Date started,
      @JsonProperty("updated") final Date updated,
      @JsonProperty("status") final String status) {
    this.id = id;
    this.textField1 = textField1;
    this.textField2 = textField2;
    this.started = started;
    this.updated = updated;
    this.status = status;
  }
[...]
}

Когда я пытаюсь разархивировать Json, используются значения null, которые Обучает дополнительные значения, которые должны игнорироваться:

MyJsonObject{id='13105603', textField1='Text1', textField2='Text2', started=null, updated=null, status='1569348774000'}

Есть ли способ сказать ObjectMapper игнорировать null значения массива? Можно ли добиться этого без написания спецификационного десериализатора c

Я уже пробовал @JsonInclude(JsonInclude.Include.NON_NULL) без эффекта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...