Джексон Сериализация полей объекта в зависимости от порядка объявления полей в Object - PullRequest
0 голосов
/ 21 июня 2020

Я наблюдаю странную проблему. Если recon_orders помещается перед orders, можно сериализовать поля. Но если я поменяю порядок recon_orders и orders, он дает только идентификатор в order_items, а не полный объект order_items (в recon_orders)!

@Getter
@Setter
@SuperBuilder
@AllArgsConstructor
@NoArgsConstructor
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonIgnoreProperties(ignoreUnknown = true)
public class SomeDto {

    @JsonProperty("recon_orders")
    private List<OrderListingDto> reconOrders;

    @JsonProperty("orders")
    private List<OrderListingDto> orders;

    //... some other fields  

}

С recon_orders выше , o / p

"recon_orders": [
    {
      "adjustable": false,
      "billable": false,
      "id": 1,
      "order_items": [
        {
          "id": 1,
          "isActive": true,
          "inventoryItemId": null,
          "quantity": 1,
          "listPrice": 100.0,
          "price": 100.0,
          "processingDate": null,
          "totalAmount": 100.0,
          "status": null,
          "itemType": "EARLY_MOVEOUT_PENALTY",
          "totalDiscountAmount": null,
          "isRecurring": false,
          "totalTaxAmount": null,
          "chargeType": "CHARGE",
          "category": "EARLY_MOVEOUT_PENALTY",
          "description": "test",
          "owed": true,
          "discount": false,
          "payment": false,
          "orderId": 1
        }
      ],
    }
  ]

с orders выше recon_orders

  "recon_orders": [
    {
      "adjustable": false,
      "billable": false,
      "id": 1,
      "order_items": [
        1
      ],
    }
  ]

В чем может быть проблема? (возможно, JsonBackReference или другая техническая аннотация глубоко в OrderItems). Также recon_orders - это подмножество заказов. Версия Spring: 2.0.2.RELEASE версия jackson: 2.9.9

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