में SimpleXML deserialization त्रुटि मुझे deserialization जावा-ऑब्जेक्ट में समस्या है। Deserialization के लिए मैं SimpleXML का उपयोग करें।एंड्रॉइड
@Root
public class A {
@ElementList
private ArrayList<B> b;
getters, setters...
}
public class B{
@Element(name="C", required=false)
private C c;
getters, setters...
}
public class C{
private int id;
private String name;
getters, setters...
}
मैं एक्सएमएल, प्राप्त करने के लिए अगले क्षेत्र है जो: वर्ग बी में एक मैच भी नहीं है 'शून्य' विशेषता:
<A>
<B>
<C i:nil="true" />
</B>
</A>
Dalvink अगले अपवाद फेंकता है: org.simpleframework.xml.core.AttributeException लाइन -1
समाधान के लिए कोई विचार हैं? धन्यवाद।
<सी i: nil = "true" /> का अर्थ है कि सी-ऑब्जेक्ट शून्य है। लेकिन SimpleXML इसे समझ में नहीं आता है। इसके अलावा इस एक्सएमएल-दस्तावेज़ में फ़ील्ड <डी i: nil = "true" /> है, डी स्ट्रिंग है। मैंने @ एलीमेंट (आवश्यक = झूठी) स्ट्रिंग डी की टिप्पणी की। यह काम करता है! –
शुरुआत के लिए यह मान्य एक्सएमएल भी नहीं है, 'i' उपसर्ग के लिए नामस्थान कहां घोषित किया गया है? उपर्युक्त उत्तर काम करेगा, लेकिन आप Persister.read (A.class, sourceXml, false) के साथ भी पढ़ सकते हैं। यह मुझे अनदेखा करेगा: शून्य और कोई अपवाद नहीं फेंक दिया जाएगा। –
मैंने इसे नवीनतम संस्करण में आजमाया है और यह काम नहीं करता है। मैंने उपसर्ग के बिना उपसर्ग के साथ, नेमस्पेस परिभाषाओं के साथ प्रयास किया है। कुछ भी नहीं ... कुछ भी काम नहीं करेगा। – dodsky