Tôi gặp lỗi khi cố gắng làm việc với chú thích jackson @JsonIdentityInfo. Khi tôi cố gắng deserialize đối tượng tôi nhận được ngoại lệ folowing:JsonMappingException: Đã có POJO cho id
Không thể đọc JSON: Đã có POJO cho id (java.lang.Integer) [1] (thông qua chuỗi tham chiếu: eu.cobiz.web. domain.Site ["operator"] -> eu.yavix.web.domain.Account ["image"] -> eu.cobiz.web.domain.Image ["@ Image"]); ngoại lệ lồng nhau là com.fasterxml .jackson.databind.JsonMappingException: Đã có POJO cho id (java.lang.Integer) [1] (thông qua chuỗi tham chiếu: eu.yavix.web.domain.Site ["operator"] -> eu. cobiz.web.domain.Account ["image"] -> eu.cobiz.web.domain.Image ["@ Image"])
Các JSON Tôi cố gắng để deserialize trông giống như:
{
"@Site": 1,
"siteId": 1,
"name": "0",
"address": {
"@Address": 2,
"addressId": 4,
"number": "22"
},
"operators": [
{
"accountId": 1,
"email": "[email protected]",
"image": {
"@Image": 1,
"imageId": 1,
"uri": "http://icons.iconarchive.com/icons/deleket/purple-monsters/128/Alien-awake-icon.png"
}
},
{
"accountId": 2,
"email": "[email protected]",
"image": {
"@Image": 2,
"imageId": 2,
"uri": "http://icons.iconarchive.com/icons/deleket/purple-monsters/128/Alien-awake-icon.png"
}
}
]
}
đối tượng miền của tôi là chú thích với
@JsonIdentityInfo(generator = ObjectIdGenerators.IntSequenceGenerator.class, property = "@Image")
vấn đề nảy sinh trên chú thích @ id vì nếu tôi loại bỏ các chú thích vấn đề biến mất (như tôi đã làm cho tài khoản) nhưng trên sự hiểu biết của tôi các tính năng mới là hữu ích cho phụ thuộc cyclic mà là hữu ích cho tôi trong các kịch bản khác. Không nên có xung đột giữa 2 hình ảnh vì chúng là các đối tượng khác nhau.
Có ai có ý tưởng về cách giải quyết hoặc vấn đề là gì không?
Tôi nghĩ rằng không áp dụng cho deserialization - ID đã tồn tại. –