La bibliothèque xml / <x:out select="" ></x:out> ne marche
Fermé
Conan3
Messages postés8Date d'inscriptionlundi 18 décembre 2017StatutMembreDernière intervention 9 août 2020
-
9 août 2020 à 21:44
Salut !
Le problème c'est que lorsque j'éxecute le fichier myXml.jsp dans Eclipse, la balise <x:out select="$doc/news/article/auteur" ></x:out> n'affiche rien et la balise <x:out select="count($doc/news/article/auteur)" ></x:out> affiche just le nombre 0 au lieu d'afficher le nombre 3.
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>XML en JSTL</title> </head> <body> <c:import url="monDocument.xml" varReader="monReader"> <%-- Parse le contenu du fichier XML monDocument.xml dans une variable nommée 'doc' . var : contient le nom de la variable de scope qui contiendra les données qui représentent notre document XML parsé. Comme d'habitude, si l'attribut scope n'est pas explicité, la portée par défaut de cette variable sera la page ; doc : permet de préciser que l'on souhaite parser le contenu de notre varReader défini précédemment lors de l'import. Souvenez-vous : le varReader ici nommé monReader est une variable ; il nous faut donc utiliser une EL pour y faire référence, en l'occurrence ${monReader} ! --%> <x:parse var="doc" doc="${ monReader }"></x:parse> <x:out select="$doc/news/article/auteur" ></x:out> <x:out select="count($doc/news/article/auteur)" ></x:out> </c:import> </body> </html>
Et voici le code du fichier monDocument.xml :
<!-- Parse le flux XML contenu dans le corps de la balise --> <xarse var="doc"> <news> <article id="1"> <auteur>Pierre</auteur> <titre>Foo...</titre> <contenu>...bar !</contenu> </article> <article id="27"> <auteur>Paul</auteur> <titre>Bientôt un LdZ J2EE !</titre> <contenu>Woot ?</contenu> </article> <article id="102"> <auteur>Jacques</auteur> <titre>Coyote court toujours</titre> <contenu>Bip bip !</contenu> </article> </news> </xarse>
Enfin, voilà la structure de mon app nommée XML :
J'ai besoin de votre aide s'il vous plaît.
Merci d'avance.
A voir également:
La bibliothèque xml / <x:out select="" ></x:out> ne marche