J'implémente un sous-protocole homebrew de XMPP, et j'utilise une combinaison de StAX et de JAXB pour analyser/classer les messages. Et quand je marshall un message je me retrouve avec des tas de déclarations d'espace de noms unneded:JAXB ajoutant des déclarations d'espace de noms inutiles aux balises
<ns2:auth xmlns:ns2="urn:ietf:params:xml:ns:ilf-auth"
xmlns:ns4="ilf:iq:experiment:power" xmlns:ns3="ilf:iq:experiment:init"
xmlns:ns5="ilf:iq:experiment:values" xmlns:ns6="ilf:iq:experiment:result"
xmlns:ns7="ilf:iq:experiment:stop" xmlns:ns8="ilf:iq:experiment:end">
[email protected]</ns2:auth>
au lieu de:
<ns:auth xmlns:ns="urn:ietf:params:xml:ns:ilf-auth>[email protected]</ns:auth>
Est-il possible de transformer celle de? Tous ces espaces de noms sont utilisés dans différents messages qui sont rassemblés/décompilés par JAXB, mais chaque message utilise un espace de nom.
PS. Je ne suis pas un expert XML s'il vous plaît ne me découragez pas si j'ai fait une erreur stupide;)
Ceci est complètement inacceptable pour les documents juridiques qui doivent être conservés pendant le transport pour maintenir leur intégrité. JAXB est un moyen de rendre les choses simples plus complexes –
JAXB simplifie l'analyse et la production XML. J'ai fait un projet qui utilise à la fois JAXB et dom4j (dans deux parties différentes) et la différence est grande. –