Bonjour,
j'essaie de rajouter des attributs dans un autre namespace à des balises existante. Pour des raisons que j'ignore, le DOM rajoute bien l'attribut avec son préfixe, mais n'associe pas le préfixe au namespace.
J'ai ce code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 group = svgDocument.createElementNS( SVGDOMImplementation.SVG_NAMESPACE_URI, "g"); Attr attr = group.getOwnerDocument().createAttributeNS("http://mycompany.com/fronts/1.0", "com:segment"); attr.setValue(""+i); group.setAttributeNode(attr); log.info("Adding group segment"+i); element.appendChild(group); groups[i]=group;
Je m'attends à ce qu'il génère ceci:
Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 <?xml version="1.0" encoding="UTF-8"?> <g xmlns="http://www.w3.org/2000/svg" style="opacity:1.000000"> <g com:segment="0" xmlns:com="http://mycompany.com/fronts/1.0"> //...etc etc
au lieu de ça, j'ai
Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 <?xml version="1.0" encoding="UTF-8"?> <g xmlns="http://www.w3.org/2000/svg" style="opacity:1.000000"> <g com:segment="0"> //...etc etc
Le préfixe est bien là, mais la déclaration du namespace manque. Qu'est-ce que j'oublie?
Partager