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

JavaScript Discussion :

Accès à une variable XML par JS


Sujet :

JavaScript

  1. #1
    Membre du Club
    Inscrit en
    Mai 2009
    Messages
    141
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 141
    Points : 64
    Points
    64
    Par défaut Accès à une variable XML par JS
    Bonjour a tous;

    J'ai crééer dans mon projet JAVA un fichier XML contenant toutes les erreurs du site, et je voudrait maintenant les récupérer côté Javascript pour les control dis légers de routine (genre champ vide....) mais je ne sais pas du tout comment faire....

    voici mon XML :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
     
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
    <properties>
     
    <!-- Fiche utilisateur -->
    <entry key="ErrorFicheUser.1">Veuillez renseigner le service</entry>
    </properties>
    Merci d'avance pour votre aide et votre expérience

  2. #2
    Membre du Club
    Inscrit en
    Mai 2009
    Messages
    141
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 141
    Points : 64
    Points
    64
    Par défaut
    J'ai essayer ceci :

    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
    20
    /**************************************************************/
    	var xhr_object = null;
     
    	if(window.XMLHttpRequest) // Firefox
    	   xhr_object = new XMLHttpRequest();
    	else if(window.ActiveXObject) // Internet Explorer
    	   xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
    	else { // XMLHttpRequest non supporté par le navigateur
    	   alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
    	   return;
    	}
     
    	xhr_object.open("GET", "../../src/ErrorMessages.xml", true);
     
    	xhr_object.onreadystatechange = function() {
    	   if(xhr_object.readyState == 4) alert(xhr_object.responseText);
    	}
     
    	xhr_object.send(null);
    	/**************************************************************/
    J'arrive à afficher tous le contenu de mon fichier dans un alert mais pas une balise précise ? et mon fichier je ne peut pas le changer de place ?

  3. #3
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    alert(xhr_object.responseXML);
    devrait te permettre d'accéder aux balises

  4. #4
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    var reponse=xhr_object.responseXML;
    alert(reponse.getElementsByTagName('entry')[0].childNodes[0].nodeValue;
    alert(reponse.getElementsByTagName('entry')[0].getAttribute('key'));

  5. #5
    Membre du Club
    Inscrit en
    Mai 2009
    Messages
    141
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 141
    Points : 64
    Points
    64
    Par défaut
    J'ai adapté mon code avec ta solution andry.aime mais j'obtiens dans ma popup le nom de la clé et nom sa valeur :

    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
    20
    21
    22
     
     
    var xhr_object = null;
     
    		if(window.XMLHttpRequest) // Firefox
    		   xhr_object = new XMLHttpRequest();
    		else if(window.ActiveXObject) // Internet Explorer
    		   xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
    		else { // XMLHttpRequest non supporté par le navigateur
    		   alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");		   
    		}
     
    		xhr_object.open("GET", "../js/ErrorMessages.xml", true);
     
    		xhr_object.onreadystatechange = function() {
    		   if(xhr_object.readyState == 4) {
    			   var reponse=xhr_object.responseXML;			   
    			   alert(reponse.getElementsByTagName('entry')[0].getAttribute('key'));
    		   }
    		}
     
    		xhr_object.send(null);

  6. #6
    Membre du Club
    Inscrit en
    Mai 2009
    Messages
    141
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 141
    Points : 64
    Points
    64
    Par défaut
    Ca marche ainsi :

    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
    20
    21
    22
     
     
    var xhr_object = null;
     
    		if(window.XMLHttpRequest) // Firefox
    		   xhr_object = new XMLHttpRequest();
    		else if(window.ActiveXObject) // Internet Explorer
    		   xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
    		else { // XMLHttpRequest non supporté par le navigateur
    		   alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");		   
    		}
     
    		xhr_object.open("GET", "../js/ErrorMessages.xml", true);
     
    		xhr_object.onreadystatechange = function() {
    		   if(xhr_object.readyState == 4) {
    			   var reponse=xhr_object.responseXML;			   
    			   alert(reponse.getElementsByTagName('entry')[0].firstChild.nodeValue);
    		   }
    		}
     
    		xhr_object.send(null);

    Ma dernière question est pourkoi je n'arrive pas à joindre mon fichier si je le place dans src de mon environement web Java

  7. #7
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Vérifie le chemin du fichier.

  8. #8
    Membre du Club
    Inscrit en
    Mai 2009
    Messages
    141
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 141
    Points : 64
    Points
    64
    Par défaut
    salut andry.aime,

    J'effectue un clique droit sur mon fichier dans éclipse pour connaitre l'adresse du fichier : /FicheUtilisateur/src/ErrorMessages.xml.

    Sachant que je le lance de cette JSP : /FicheUtilisateur/WebContent/protected/ficheUtilisateur.jsp

    Voici l'adresse que je renseigne mais celane fonctionne pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    xhr_object.open("GET", "../../src/ErrorMessages.xml", true);
    C'est quoi le souci .....lol

  9. #9
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Le premier '../' permet de monter dans le repertoire protected, le soncond dans WebContent et tu dois ajouter une troisième pour aller jusqu'au FicheUtilisateur c'est après que rentre dans src.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xhr_object.open("GET", "../../../src/ErrorMessages.xml", true);

  10. #10
    Membre du Club
    Inscrit en
    Mai 2009
    Messages
    141
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 141
    Points : 64
    Points
    64
    Par défaut
    Je comprend bien la philosophie mais ça ne marche pas ..... meme avec trois.
    En remontant cran par cran pour atteindre la racine ce code est fonctionnel :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xhr_object.open("GET", "../../ErrorMessages.xml", true);
    Mais dès que je rajoute "src" ensuite ça ne marche pas ...

Discussions similaires

  1. récupération d'une variable xml
    Par momowell dans le forum Flash
    Réponses: 2
    Dernier message: 13/07/2006, 11h33
  2. contenu d'une variable définit par une autre variable
    Par PuppeT mAsTer dans le forum Langage
    Réponses: 4
    Dernier message: 04/07/2006, 19h32
  3. Problème d'accès à une variable
    Par khaled.mtibaa dans le forum Langage
    Réponses: 3
    Dernier message: 20/04/2006, 11h39
  4. [JDOM] Créer une variable xml directement dans java
    Par Tigrounette dans le forum Format d'échange (XML, JSON...)
    Réponses: 8
    Dernier message: 18/12/2005, 14h21
  5. Acces à une variable-tableau de PHP
    Par Erwan21 dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 09/02/2005, 13h55

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