[Flex]Ajout de noeud xml avec support d'un namespace.

Mammouth du PHP | 684 Messages

25 juin 2007, 17:09

Salut,

Je cherche la possibilite de mettre des informations complementaires a un objet XML deja existant.
J'arrive bien a faire l'ajour suivant.

Code : Tout sélectionner

var outXML:XML = <Test width="100%" height="100%"></Test>; outXML.appendChild('<Item></Item>');
Par contre je n'arrive pas a ajouter avec un namespace determine.

Code : Tout sélectionner

var outXML:XML = <Test width="100%" height="100%"></Test>; var ns:Namespace = new Namespace('soap', 'http://schemas.xmlsoap.org/soap/envelope/'); outXML.addNamespace(ns); outXML.appendChild('<soap:Item></soap:Item>');
J'aimerai aussi au passage ajouter par la suite le namespace a Test pour obtenir soap:Test.

Si vous avez une idee de comment faire sous Flex. Sinon je vais voir du cote de E4X sur Mozilla.

Je suis prenneur aussi des liens de docs ou exemples ou forum parlant de Flex + XML + Namespace.

Merci
Zigz4g

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

25 juin 2007, 17:39

Modération :
Afin d'obtenir plus de réponses, le sujet est déplacé dans le forum "XML".
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Mammouth du PHP | 684 Messages

26 juin 2007, 00:01

Voila j'ai trouvé par moi même :D

Pour infos, faut manipuler le namespace avant pour permettre a E4X de comprendre le XML que l'on veut gérer.

Attention tout de même a ce que je viens de dire car je suis encore au stade expérimental de l'E4X.

Code : Tout sélectionner

var outXML:XML = <Test:Appli xmlns:mx="http://www.test.com/test" width="100%" height="100%"> </Test:Appli>; var ns:Namespace = new Namespace('Test', 'http://www.test.com/test'); default xml namespace = ns; outXML.ns::Shop = "donnee"; outXML.ns::Shop.@id = "id3"; var testMe:XML = new XML('<Test:Shop></Test:Shop>'); outXML.appendChild(testMe); outXML.appendChild(<Test:Electrique label="Courant"></Test:Electrique>); default xml namespace = '';
Voila un bout de code qui represente ce que je cherchais. Bon c'est peut etre pas la bonne technique mais c'est tout ce que j'ai trouvé pour le moment.

Bonne nuit :)
Zigz4g