Parcourir un arbre DOM en Java

Parcours avec NodeIterator et TreeWalker

Cette exercice va permettre de comprendre le fonctionnement de l'objet NodeIterator et TreeWalker.

Téléchargez l'archive contenant une version incomplète de la solution. Décompressez l'ensemble de son contenu dans un dossier de votre choix et importez-le dans Eclipse comme précédemment. Il s'agit de reprendre l'exercice précédent avec les deux nouvelles méthodes. Par ailleurs la solution de l'exercice précédent est présente dans cette archive.

La classe Exercice possède deux méthodes en plus que précédemment :

  • void parcoursNodeIterator() : Affiche les personnes du fichier XML en utilisant l'objet NodeIterator

  • void parcoursTreeWalker() : Affiche les personnes du fichier XML en utilisant TreeWalker et un NodeFilter

En plus de la classe Exercice, on utilisera la classe NodeFilterPersonne.

Exercice2.zip

Question

Compléter la méthode acceptNode(Node n) de la classe NodeFilterPersonne (TODO 4) afin de ne garder que les nœuds "personne" lors du parcours de l'arbre.

Pour rappel, l'interface NodeFilter permet de définir un filtre supplémentaire pour le NodeIterator ou le TreeWalker en plus de celui spécifié dans le paramètre whatToShow de ces méthodes.

Maintenant que nous avons implémenté notre propre NodeFilter ne gardant que les nœuds de type personne lors du parcours, nous allons afficher l'ensemble des personnes du fichier XML avec leurs informations en utilisant NodeIterator d'une part et TreeWalker d'autre part.

Question

Compléter la classe parcoursNodeIterator afin d'afficher les personnes de l'annuaire en utilisant l'objet NodeIterator (TODO 5) et sans utiliser la classe NodeFilterPersonne.

Question

Compléter la classe parcoursNodeIterator afin d'afficher les personnes de l'annuaire en utilisant l'objet TreeWalker (TODO 6) et la classe NodeFilterPersonne.

Vous trouverez dans l'archive ci-dessous la correction générale du projet.

CorrectionDOM.zip

PrécédentPrécédentFin
AccueilAccueilImprimerImprimer Etienne Chognard, Nicolas Lhome, Kévin Jezequell 2014-2016 (Contributions : Stéphane Crozat, les étudiants de NF29) Paternité - Partage des Conditions Initiales à l'IdentiqueRéalisé avec Scenari (nouvelle fenêtre)