Ratpack Jackson (json) отображает один и тот же объект, но в другом формате ответа

Я использую RatPack 1.1.1 с Джексоном, и он по-разному отображает один и тот же объект "Продукт". Первый "Продукт" в моем главном объекте возвращается с атрибутом "productCode", но для остальных для того же продукта он возвращает только значение атрибута "product" со значением "productCode"!

Зачем? это нормально?

Ответ от рендеринга:

ProductCharacteristics=[ {
  "id" : 1,
  "product" : {
        "productCode" : "cold-brew"
   },
  "attributeCode" : "family",
  "attributeValue" : "Kits",
  }, {
  "id" : 2,
  "product" : "cold-brew",
  "attributeCode" : "Couleur",
  "attributeValue" : "Noir",
  }, {
  "id" : 3,
  "product" : "cold-brew",
  "attributeCode" : "Matériaux",
  "attributeValue" : "Verre-Plastique",
  }
]

Определение моей сущности ProductCharacteristic:

@Entity
@JsonIdentityInfo(generator=ObjectIdGenerators.PropertyGenerator.class, property="id")
@ToString
class ProductCharacteristic {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    Long id;

    @JoinColumn(name = "product_code")
    @ManyToOne(optional = false, fetch = FetchType.EAGER, cascade = CascadeType.MERGE)
    Product product;
}

Определение моей сущности продукта:

@Entity
@JsonIdentityInfo(generator=ObjectIdGenerators.PropertyGenerator.class, property="productCode")
@ToString
public class Product {
    @Id
    String productCode;
}

Почему ответ не такой:

ProductCharacteristics=[ {
  "id" : 1,
  "product" : {
        "productCode" : "cold-brew"
   },
  "attributeCode" : "family",
  "attributeValue" : "Kits",
  }, {

  "id" : 2,
  "product" : {
        "productCode" : "cold-brew"
   },
  "attributeCode" : "Couleur",
  "attributeValue" : "Noir",
  }, {

  "id" : 3,
  "product" : {
        "productCode" : "cold-brew"
   },
  "attributeCode" : "Matériaux",
  "attributeValue" : "Verre-Plastique",
  }
]

Спасибо за вашу помощь!

0 ответов

Другие вопросы по тегам