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?