JAXB: les attributs Qualifiés désactive l'espace de noms par défaut xmlns=“”?
Lorsque j'utilise @XmlSchema(attributeFormDefault = XmlNsForm.QUALIFIED, ...)
ou@XmlAttribute(namespace = "sample.com/y", ...)
JAXB ignore @XmlSchema(namespace = "sample.com/x", ...)
et, au lieu de:
<a xmlns="sample.com/y" xmlns:ns0="sample.com/y">
<b ns0:att=""/>
</a>
génère quelque chose comme:
<ns1:a xmlns:ns1="sample.com/x" xmlns:ns0="sample.com/y">
<ns1:b ns0:att=""/>
</ns1:a>
Est-ce un comportement normal? Est-il un moyen de corriger cela?
OriginalL'auteur Ali Shakiba | 2011-07-24
Vous devez vous connecter pour publier un commentaire.
EclipseLink JAXB (MOXy) est de la manipulation du préfixe de qualification pour les éléments différemment selon l'attribut formulaire de qualification (comme illustré ci-dessous).
L'espace de noms de qualification n'est pas mal, mais je suis d'accord que l'utilisation de l'espace de noms par défaut est mieux quand c'est possible. Vous pouvez suivre les progrès sur cette question en utilisant le bug suivant:
Un
Démo
paquet-info sans attributeFormDefault ensemble
De sortie:
paquet-info avec attributeFormDefault ensemble
De sortie:
OriginalL'auteur bdoughan