IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Flex Discussion :

mx.xpath.XPathAPI n'existe plus en AS3 ? [Flex4]


Sujet :

Flex

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 25
    Points : 34
    Points
    34
    Par défaut mx.xpath.XPathAPI n'existe plus en AS3 ?
    Flex 4 débutant.
    Je cherche à utiliser l'import mx.xpath.XPathAPI dans un fichier .as
    Flash Builder indique :"1172: La définition mx.xpath:XPathAPI est introuvable."
    J'ai de nombreuses expressions xpath existantes dans des fichiers xslt qui me servaient pour la présentation html ( le schema classique xml+xslt => html) .
    Je souhaite réutiliser, sans me poser trop de questions, ces expressions xpath existantes (et parfois complexes) pour porter ma présentation vers du flex 4.

    J'ai l'impression que cette librairie a disparue à partir de AS3. Je me trompe ?

    Cette librairie a changée de nom ? Dois-je utiliser une librairie externe ?

    Merci d'avance.

  2. #2
    Membre expert
    Avatar de Jim_Nastiq
    Homme Profil pro
    Architecte, Expert Flex
    Inscrit en
    Avril 2006
    Messages
    2 335
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte, Expert Flex
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 2 335
    Points : 3 189
    Points
    3 189
    Par défaut
    Salut,

    XPathAPI est une lib AS2 (voir AS1, je ne sais plus). Flex est basé sur l'as 3 qui est radicalement différent et bien mieux structuré que ses prédécesseurs (POO). Donc il est peu probable que la lib ai été porté sur AS3 , vu la puissance de l'E4X.
    As tu regardé l'E4X ? je pense que cela devrait te convenir si tu souhaites développer en AS3/Flex

    PS: le namesapce mx est pour Flex , or toi tu tentes de pointer vers mx dans le sens Flash MX , qui n'a pas grand chose a voir

    Pensez vraiment à effectuer une recherche avant de poster, ici et sur un moteur de recherche! c'est la moindre des choses
    Pensez au tag

    Mon Blog sur la techno Flex
    Ma page sur Developpez.com

    Jim_Nastiq

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 25
    Points : 34
    Points
    34
    Par défaut
    Merci de ta réponse, j'ai mis du temps pour répondre voici pourquoi:
    Il y a tout de meme une grande différence entre Xpath et E4X.

    Une expression xpath c'est par exemple une String qui contient:

    "/animal/vertebre[@patte='4']/vision[@nocturne='vrai']/poil/@couleur"

    qui va me retourner une liste de couleur des poils des animaux à 4 pattes et qui ont une vision nocturne.

    Mais l'expression xpath (une String) est interprétée à la volée !

    Cela ne semble pas etre possible avec E4X car le chemin d'accès à la donnée est ecrit dans le langage AS3 lui-meme:

    animal.vertebre(@patte=4).vision(@nocturne='vrai').poil.@couleur

    Je me trompe ?

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 25
    Points : 34
    Points
    34
    Par défaut Pour conclure sur xpath et E4X
    D'abord des infos sur E4X comparé à xpath:
    http://wso2.org/project/mashup/0.2/d...t.html#literal

    Comme on s'en apercoit E4X n'est pas satisfaisant car l'expression xpath n'est pas interprétée à la volée.

    Une solution est donnée par Memorphic

    Cela semble bien fonctionner avec un code plus simple que E4X.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    	import memorphic.xpath.XPathQuery;
    	import memorphic.xpath.parser.*;
     
     
    		var xpath:String = "/ViewConfig/ListSite/Site/@name"
     
    		var ret:ArrayList=new ArrayList();
    		var resultXml:XML = new XML(myXML);
     
    		var myQuery:XPathQuery =new XPathQuery(xpath);	
    		var resultXPath:XMLList = myQuery.exec(resultXml);
    		for each (var site:XML in resultXPath) {
    			ret.addItem(site.toString());
    		}		
    // ancien code en E4X		
    //		for each (var site:XML in resultXml.ListSite.Site) {
    //			ret.addItem((site.@name).toString());
    //		}
    Tour ceci n'a de sens que si l'on souhaite utiliser des xpath dynamiques, c'est à dire des expressions xpath construites en fonction du contexte.

    Reste à voir des problemes éventuels de performance dont il faudra peut-etre se méfier.


    Merci encore.

  5. #5
    Membre expert
    Avatar de Jim_Nastiq
    Homme Profil pro
    Architecte, Expert Flex
    Inscrit en
    Avril 2006
    Messages
    2 335
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte, Expert Flex
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 2 335
    Points : 3 189
    Points
    3 189
    Par défaut
    Merci pour ce retour Raphael94

    Pensez vraiment à effectuer une recherche avant de poster, ici et sur un moteur de recherche! c'est la moindre des choses
    Pensez au tag

    Mon Blog sur la techno Flex
    Ma page sur Developpez.com

    Jim_Nastiq

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 31/08/2006, 14h03
  2. [Internet] L'ego n'existe plus avec Internet
    Par Gilles Louïse dans le forum La taverne du Club : Humour et divers
    Réponses: 44
    Dernier message: 12/07/2006, 11h25
  3. Réponses: 7
    Dernier message: 30/05/2006, 16h45
  4. Redirection sur des fichiers qui n'existent plus
    Par gaia_dev dans le forum Apache
    Réponses: 3
    Dernier message: 03/02/2006, 19h09
  5. [FLASH MX] xpath.XPathAPI
    Par totoche dans le forum Flash
    Réponses: 7
    Dernier message: 05/12/2005, 17h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo