मेरे पास मेरी संस्थाओं में कई रिश्तों के लिए एक द्विपक्षीय है। नीचे दिए गए उदाहरण देखें: `कई रिश्तों के लिए एक बिडरेक्शनल में साइक्लिक संदर्भ
" java.lang.IllegalArgumentException:/वापस कामयाब संभाल सकते हैं जब मैं JSON को यह क्रमानुसार करने की कोशिश
public class Collaboration { @JsonManagedReference("COLLABORATION_TAG") private Set<Tag> tags; } public class Tag { @JsonBackReference("COLLABORATION_TAG") private Set<Collaboration> collaborations; }
, मैं निम्न अपवाद हो रही है संदर्भ 'COLLABORATION_TAG':। वापस संदर्भ प्रकार (java.util.Set) कामयाब प्रकार (foo.Collaboration) के साथ संगत नहीं
वास्तव में, मैं जानता हूँ कि यह समझ में आता है क्योंकि जावाडोक स्पष्ट रूप से कहा कि आप संग्रह पर @JsonBackReference का उपयोग नहीं कर सकते हैं। मेरा सवाल है, मुझे इस समस्या को कैसे हल करना चाहिए? मैंने अभी जो किया है वह मूल पक्ष पर @JsonManagedReference एनोटेशन को हटा दिया गया है, और @JsonIgnore को बच्चे के पक्ष में जोड़ा गया है। क्या कोई मुझे बता सकता है कि इस दृष्टिकोण के दुष्प्रभाव क्या हैं? क्या कोई अन्य सुझाव हैं?
आप जैक्सन 2.0 का उपयोग कर सकते में
के रूप में जैक्सन 2 पुस्तकालय में प्रदान की जाती है। Http://stackoverflow.com/questions/10065002/jackson-serialization-of-entities-with-birectional-relationships-avoiding-cyc –
'JsonIdentityInfo' एनोटेशन सुंदर है, धन्यवाद @EugeneRetunsky! http://wiki.fasterxml.com/JacksonFeatureObjectIdentity –
मैं कोशिश की है 'JsonManagedReference' और' JsonBackReference' उनमें से कोई भी काम : मैं इस पेज कि कैसे काम करता है जानने के लिए बहुत उपयोगी पाया। लेकिन, @ साइमन एंड्रेफोर्सबर्ग का दिया गया लिंक बहुत ही रोचक और काम करता है। – yas