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

Android Discussion :

Problème de récupération de données XML


Sujet :

Android

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2015
    Messages : 3
    Par défaut Problème de récupération de données XML
    Bonjour,

    Dans le cadre d'un projet de L3 Informatique, nous devons réaliser une application mobile permettant de récupérer son emploi du temps (à partir de la plateforme celcat). Cependant, nous n'arrivons pas à récupérer le fichier XML. Voici la fonction que j'utilise actuellement pour télécharger le xml et l'afficher sous forme d'une chaine de caractère. J'ai testé la fonction en Java et cela marchait avec l'url suivant : http://celcat.univ-angers.fr/web/publi/etu/g564693.xml, par contre, cela ne marche pas sous android. J'ai tout de même réussi à faire fonctionner ce code avec un fichier xml provenant d'une autre adresse (pour tester) et cela marchait sous android (cette adresse là : http://www.info.univ-angers.fr/~gh/Webrd/agences01.xml)

    Voici le code qui fonctionne avec cette adresse http://www.info.univ-angers.fr/~gh/Webrd/agences01.xml mais pas avec l'adresse qui nous intéresse : http://celcat.univ-angers.fr/web/publi/etu/g564693.xml.

    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    public class XMLAsyncTask extends AsyncTask<String, Void, Document> {
     
            private final static String TAG = Activity.class.getName();
     
            @Override
            protected Document doInBackground(String ... strings) {
     
                URL url;
                InputStream is = null;
                BufferedReader br;
                String line;
                String result = null;
     
                try {
                    url = new URL("http://celcat.univ-angers.fr/web/publi/etu/g564693.xml");
                    System.out.println(url.toString());
                    HttpURLConnection connection = (HttpURLConnection) url.openConnection();
                    connection.getContentLength();
                    is = connection.getInputStream();
     
                    br = new BufferedReader(new InputStreamReader(is));
                    System.out.println(br.readLine());
                    while ((line = br.readLine()) != null) {
                        result = result + line + "\n";
                    }
                } catch (Exception e) {
     
                } finally {
                    try {
                        if (is != null) is.close();
                    } catch (IOException ioe) {}
                }
     
                System.out.println(result);
     
                Document doc =null;
                return doc;
            }
     
            @Override
            protected void onPostExecute(Document document) {
                Log.e(TAG, "Finished");
     
            }
    }
    Ne faites pas attention au Document, pour l'instant je ne m'en sert pas et c'est normal qu'il soit null. Ce que je veux souligner c'est que le result (la chaine de charactère) est null alors qu'elle devrait contenir les données du XML.

    Avez vous une idée de ce pourquoi cela ne marche pas sous android (alors qu'en Java ça marche), avez vous une piste pour nous aider à obtenir les données de ce fichier ?

    Merci pour votre Aide !

  2. #2
    Membre Expert
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Par défaut
    Moi j'ai une question qui n'a rien à voir : à quoi cela sert de développer une application alors qu'il est possible d'importer le calendrier dans n'importe quelle application de calendrier. C'est dans le cadre d'un projet noté ?
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2015
    Messages : 3
    Par défaut
    C'est bel est bien un projet noté, en fait le but de cette application va surtout être de permettre aux étudiants d'être notifiés lors de la modification d'un cours, ou l'ajout d'un partiel par exemple. Par ailleurs, cela pourrait aussi permettre aux etudiants redoublant d'ajouter un filtre pour enlever les cours qu'ils ont déjà validés (et certainement d'autres fonctionnalités viendront s'y ajouter si nous avons le temps en fin de projet !)

  4. #4
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 693
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 693
    Par défaut
    Commencer par traiter les catch (Exception e) {} en affichant par exemple la stacktrace peut déjà être un bon début de piste
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Membre Expert
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Par défaut
    Citation Envoyé par Rockaviz Voir le message
    C'est bel est bien un projet noté, en fait le but de cette application va surtout être de permettre aux étudiants d'être notifiés lors de la modification d'un cours, ou l'ajout d'un partiel par exemple. Par ailleurs, cela pourrait aussi permettre aux etudiants redoublant d'ajouter un filtre pour enlever les cours qu'ils ont déjà validés (et certainement d'autres fonctionnalités viendront s'y ajouter si nous avons le temps en fin de projet !)
    C'est très ambitieux car vous partez avec un handicap technique : vous êtes coté client. La notification est la responsabilité du serveur, sur lequel vous n'avez pas d'emprise. Détecter un changement nécessite donc de stocker en local l'emploi du temps, puis de le comparer à l'emploi du temps en ligne. A quelle fréquence le faire ? comment comparer efficacement ? autant de questions délicates pour vous. Le filtrage également est délicat, puisque que si l'application propose une liste de cours "en dur" à filtrer sous forme de cases à cocher par exemple, le jour où la formation change les intitulés des cours, le code de votre application doit être modifiée. On voit bien sur ces exemples que votre application est bien plus technique qu'elle n'en a l'air.

    Et du coup je reviens à ma remarque initiale : sans ces fonctionnalités innovantes, vous ne ferez jamais mieux que les applications calendrier, dont celle préinstallée sur les smartPhones Android. Ne serait-ce qu'au niveau affichage (comment comptez-vous présenter les informations à l'écran ?).
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

  6. #6
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2015
    Messages : 3
    Par défaut
    Oui, on a déjà réfléchi à tout ça et il est prévu. Le sujet nous a été proposé par notre responsable de projet, et même si je ne voyais pas vraiment l'interet non plus au premier coup d'oeil, je me suis dit que cela serait tout de même intéressant pour apprendre à développer mes connaissances personnelles. De plus, il pourrait être interessant que l'université possède une application dédiée à son emploi du temps permettant de gérer toutes les fonctionnalités décrites plus haut. Mais pour l'instant le problème n'est pas là, nous avons juste besoin de récupérer les données du xml et nous ne comprenons pas vraiment pourquoi cela ne fonctionne pas. Aucune exception n'est levée avec l'url dont on veut extraire les données, les données ne sont juste pas récupérées... (Alors que ce code fonctionne pour d'autres liens contenant moins de données...)

Discussions similaires

  1. Réponses: 7
    Dernier message: 27/02/2009, 16h17
  2. [SimpleXML] Récupération des données XML
    Par squalito dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 30/05/2006, 14h22
  3. [MySQL] Problème de récupération de données
    Par guillaumeIOB dans le forum PHP & Base de données
    Réponses: 11
    Dernier message: 05/04/2006, 15h13
  4. Problème de récupérations de données dans une table mysql
    Par Helpine dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 09/03/2006, 19h07
  5. problème xsl : inclure une donnée xml dans une balise html
    Par djodjo dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 03/01/2003, 09h24

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