Джексон работает с различными форматами изображений JSON - PullRequest
0 голосов
/ 26 октября 2018

Я пытаюсь обработать JSON, который иногда имеет разные форматы для тега изображения:

"image": [
    "https:\/\/tmbidigitalassetsazure.blob.core.windows.net\/secure\/RMS\/attachments\/37\/1200x1200\/Cheesy-Cauliflower-Breadsticks_EXPS_THCOMS17_207460_B09_08_3b.jpg",
    [
        "https:\/\/cdn3.tmbi.com\/toh\/GoogleImages\/Cheesy-Cauliflower-Breadsticks_EXPS_THCOMS17_207460_B09_08_3b.jpg"
    ],
    [
        "https:\/\/cdn3.tmbi.com\/toh\/GoogleImagesPostCard\/Cheesy-Cauliflower-Breadsticks_EXPS_THCOMS17_207460_B09_08_3b.jpg"
    ]
],

или

"image": "http://someimage"

или

"image": [
"https://alldayidreamaboutfood.com/wp-content/uploads/2017/06/Garlic-Parmesan-Wings.jpg"
]

инаконец

"image": {
  "@type": "ImageObject",
  "url": "http://cdn.ampproject.org/leader.jpg",
  "height": 200,
  "width": 200
},

Мой код имеет:

  @JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
  private String[] image;

Это, кажется, работает для 2-го и 3-го примера, но выдает исключение для первого:

Cannot deserialize instance of `java.lang.String` out of START_ARRAY token

Любые советы о том, как бороться с этим типом вариации?

...