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

Servlets/JSP Java Discussion :

Affichage d'un XML par un servlet


Sujet :

Servlets/JSP Java

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Août 2003
    Messages
    117
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Août 2003
    Messages : 117
    Points : 68
    Points
    68
    Par défaut Affichage d'un XML par un servlet
    Bonjour,

    J'aimerai parcourir un fichier XML dans mon servlet et l'afficher ds mon navigateur.
    Pour ce qui est de parcourir un fichier XML, j'ai suivi le tuto de Nicolas CYNOBER sur ce site que j'ai adapté pour l'utilisé ds un servelt.

    Voici le code adapté :
    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
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
     
    package pkg.servlet;
     
    import java.io.IOException;
    import java.io.PrintWriter;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
     
    import java.io.*;
    import org.jdom2.*;
    import org.jdom2.input.*;
    import org.jdom2.filter.*;
    import java.util.List;
    import java.util.Iterator;
     
    public class XMLServlet extends HttpServlet {
     
        static org.jdom2.Document document;
        static Element racine;
     
        protected void processRequest(HttpServletRequest request, HttpServletResponse response)
                throws ServletException, IOException {
     
            response.setContentType("text/html;charset=UTF-8");
            PrintWriter out = response.getWriter();
     
            try {
                //On crée une instance de SAXBuilder
                SAXBuilder sxb = new SAXBuilder();
                try {
                    //On crée un nouveau document JDOM avec en argument le fichier XML
                    //Le parsing est terminé ;)
                    document = sxb.build(new File("Y:\\file.xml"));
                }
                catch(Exception e){}
     
                //On initialise un nouvel élément racine avec l'élément racine du document.
                racine = document.getRootElement();
     
                //Méthode définie dans la partie 3.2. de cet article
                afficheALL(); 
     
                } finally {            
                    out.close();
                }
            }
     
        static void afficheALL() {
       //On crée une List contenant tous les noeuds "etudiant" de l'Element racine
       List listEtudiants = racine.getChildren("etudiant");
     
       //On crée un Iterator sur notre liste
       Iterator i = listEtudiants.iterator();
       while(i.hasNext())
       {
          //On recrée l'Element courant à chaque tour de boucle afin de
          //pouvoir utiliser les méthodes propres aux Element comme :
          //sélectionner un nœud fils, modifier du texte, etc...
          Element courant = (Element)i.next();
          //On affiche le nom de l’élément courant
          out.println(courant.getChild("nom").getText());
       }
    }
     
      // <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
        @Override
        protected void doGet(HttpServletRequest request, HttpServletResponse response)
                throws ServletException, IOException {
            processRequest(request, response);
        }
     
        @Override
        protected void doPost(HttpServletRequest request, HttpServletResponse response)
                throws ServletException, IOException {
            processRequest(request, response);
        }
     
        @Override
        public String getServletInfo() {
            return "Short description";
        }// </editor-fold>
    }
    Tout fonctionne sauf l'affichage sur ma page.
    La méthode afficheALL() ne reconnait pas ma variable out déclarée ds la méthode processRequest

    Si quelqu’un pouvait me mettre sur la voie

    Merci d'avance !

  2. #2
    Membre actif Avatar de hbennou
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2008
    Messages
    162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Mai 2008
    Messages : 162
    Points : 205
    Points
    205
    Par défaut
    Salut,

    passe le en paramètre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    static void afficheALL(PrintWriter out){
     
    }

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Août 2003
    Messages
    117
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Août 2003
    Messages : 117
    Points : 68
    Points
    68
    Par défaut
    Ça marche parfaitement !!!
    merci pour ton aide hbennou

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 17/05/2011, 19h20
  2. problème d'affichage d'un fichier xml parsé sous java
    Par nhila8 dans le forum Format d'échange (XML, JSON...)
    Réponses: 2
    Dernier message: 05/04/2010, 20h00
  3. Gros flux XML généré par une servlet
    Par aurelientp dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 16/07/2009, 22h59
  4. [JMeter] Envoi données XML par http pour une servlet
    Par thierry_b dans le forum Tests et Performance
    Réponses: 3
    Dernier message: 08/01/2009, 16h16
  5. Affichage d'un XML chargé par SOAP
    Par glanumf dans le forum ASP
    Réponses: 3
    Dernier message: 12/04/2005, 11h27

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