How to rename XML attributes from Java classes using JAXB annotations? -
मेरे पास यह क्लास निश्चितता है:
@ एक्सएमएलआरूट एलेमेंट लोक वर्ग आरएस रूट {निजी स्ट्रिंग _वर्जन; निजी स्ट्रिंग _xmlns_content; @XmlAttribute () सार्वजनिक स्ट्रिंग get_version () {रिटर्न _ वर्जन; } @ XmlAttribute () सार्वजनिक स्ट्रिंग get_xmlns_content () {return _xmlns_content; } सार्वजनिक शून्य सेट_वर्जन (स्ट्रिंग संस्करण) {_version = version; } सार्वजनिक शून्य set_xmlns_content (स्ट्रिंग xmlnsContent) {_xmlns_content = xmlnsContent; } सार्वजनिक आरएसएस रूट () {सुपर (); This._version = "2.0"; This._xmlns_content = "http://purl.org/rss/1.0/modules/content/"; }}
और यह इस XML को उत्पन्न करता है:
& lt; rssRoot xmlnsContent = "http://purl.org/rss/1.0/moduleules/content / "संस्करण =" 2.0 "/ & gt;
हालांकि, मुझे xmlnsContent
को xmlns: content
और rssRoot
, आरएसएस
। मैं यह कैसे कर सकता हूं?
मैंने ग्रेटर से ऊपर और संपत्ति घोषणा के पास @XmlAttribute (name = "xmlns: content")
के साथ कोशिश की, लेकिन कोई भाग्य नहीं। यह संदेश इस संदेश में विफल रहता है:
रूट अपवाद स्टैक ट्रेस: com.sun.xml.bind.v2.runtime.Illegal एननोटेशन अपवाद: 1 गलतियों की अवैध अनन्य टेशन एक्सपेशंस क्लास में दो नाम समान नाम हैं " _xmlns_content "यह समस्या निम्न स्थान से जुड़ा है: RssRoot
मैं और क्या कर सकता / सकती हूं?
लेकिन अगर आप वास्तव में चाहते हैं:
Li>
xmlns: content
एक विशेषता नहीं है, यह एक नेमस्पेस घोषणा है जेएएएसएबी जिसके परिणामस्वरूप एक्सएमएल उस नेमस्पेस (तत्वों के नाम स्थान को नामस्थान
विशेषता में @XmlElement
, @XmlRootElement <
rss
का नाम बदलने के लिए @XmlRootElement (name = "आरएसएस")
।
Comments
Post a Comment