Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Flash/Flex > Flex
Flex Forum d'entraide sur la programmation Adobe Flex : applications Internet riches (RIA)
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 21/02/2011, 18h14   #1
Membre à l'essai
 
Inscription : juin 2004
Messages : 25
Détails du profil
Informations forums :
Inscription : juin 2004
Messages : 25
Points : 21
Points : 21
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.
Raphael94 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/02/2011, 10h53   #2
Rédacteur/Modérateur
 
Avatar de Jim_Nastiq
 
Homme Jean-Marie Macé
Ingénieur consultant, leader Flex
Inscription : avril 2006
Messages : 2 194
Détails du profil
Informations personnelles :
Nom : Homme Jean-Marie Macé
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur consultant, leader Flex
Secteur : Conseil

Informations forums :
Inscription : avril 2006
Messages : 2 194
Points : 3 377
Points : 3 377
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
Jim_Nastiq est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/02/2011, 18h58   #3
Membre à l'essai
 
Inscription : juin 2004
Messages : 25
Détails du profil
Informations forums :
Inscription : juin 2004
Messages : 25
Points : 21
Points : 21
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 ?
Raphael94 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/02/2011, 14h25   #4
Membre à l'essai
 
Inscription : juin 2004
Messages : 25
Détails du profil
Informations forums :
Inscription : juin 2004
Messages : 25
Points : 21
Points : 21
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 :
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.
Raphael94 est déconnecté   Envoyer un message privé Réponse avec citation 20
Vieux 01/03/2011, 13h55   #5
Rédacteur/Modérateur
 
Avatar de Jim_Nastiq
 
Homme Jean-Marie Macé
Ingénieur consultant, leader Flex
Inscription : avril 2006
Messages : 2 194
Détails du profil
Informations personnelles :
Nom : Homme Jean-Marie Macé
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur consultant, leader Flex
Secteur : Conseil

Informations forums :
Inscription : avril 2006
Messages : 2 194
Points : 3 377
Points : 3 377
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
Jim_Nastiq est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 13h02.


 
 
 
 
Partenaires

Hébergement Web