J'ai cette classe défintion:Comment renommer des attributs XML à partir de classes Java à l'aide d'annotations JAXB?
@XmlRootElement
public class RssRoot {
private String _version;
private String _xmlns_content;
@XmlAttribute()
public String get_version() {
return _version;
}
@XmlAttribute()
public String get_xmlns_content() {
return _xmlns_content;
}
public void set_version(String version) {
_version = version;
}
public void set_xmlns_content(String xmlnsContent) {
_xmlns_content = xmlnsContent;
}
public RssRoot() {
super();
this._version = "2.0";
this._xmlns_content = "http://purl.org/rss/1.0/modules/content/";
}
}
Et il génère ce xml:
<rssRoot xmlnsContent="http://purl.org/rss/1.0/modules/content/" version="2.0"/>
Cependant, je dois renommer xmlnsContent
à xmlns:content
et rssRoot
, à rss
. Comment puis-je faire ceci?
J'ai essayé avec @XmlAttribute(name = "xmlns:content")
au-dessus du getter et près de la déclaration de propriété, mais pas de chance. La chose échoue avec ce message:
Racine trace de la pile d'exception: com.sun.xml.bind.v2.runtime.IllegalAnnotationsException: 1 compte de IllegalAnno tationExceptions classe a deux propriétés du même nom « _xmlns_content " ce problème est lié à l'emplacement suivant: RssRoot
Que puis-je faire d'autre?