Aujourd’hui j'ai travaillé sur un mx:Tree dont le dataprovider provenait d’un élément XML. Cet élément est construit dynamiquement à l’aide de données saisies par l’utilisateur. L’exemple de code ci-dessous montre la manière de générer cet XML:
var xmlContentString:String = '<' + content.fieldName + ' id="' +
content.id + '" title="' + content.title + '"/>';
newNode = new XML(xmlContentString);
appendContents(newNode);
Dans cet exemple, le contenu de la variable content.title est saisi par un utilisateur via une interface spécifique, j'ai donc très rapidement été confronté à l’erreur suivante :
Error #1090: XML parser failure: element is malformed. (il existe aussi la version française de l'erreur : Error #1090: Echec de l'analyse XML : le format de l'élément est incorrect.)
Dans mon cas l’origine de cette erreur est simple, l’utilisateur a juste saisi un caractère réservé au langage XML (&’"<>). Après quelque recherche sur le net je n’ai pas réussi à trouver une fonction qui permet de convertir ces caractères spécifiques. C’est pourquoi j’ai implémenté ce petit utilitaire et maintenant tout marche nickel :