JSTL - Tag XML <x: parse>
o <x:parse> tag é usada para analisar os dados XML especificados por meio de um atributo ou no corpo da tag.
Atributo
o <x:parse> tag tem os seguintes atributos -
Atributo | Descrição | Requeridos | Padrão |
---|---|---|---|
var | Uma variável que contém os dados XML analisados | Não | Nenhum |
xml | Texto do documento a analisar (string ou leitor) | Não | Corpo |
systemId | O URI do identificador do sistema para analisar o documento | Não | Nenhum |
filtro | O filtro a ser aplicado ao documento de origem | Não | Nenhum |
doc | Documento XML a ser analisado | Não | Página |
escopo | Escopo da variável especificada no atributo var | Não | Página |
varDom | Uma variável que contém os dados XML analisados | Não | Página |
scopeDom | Escopo da variável especificada no atributo varDom | Não | Página |
Exemplo
O exemplo a seguir mostra como o parse pode ser usado para ler o arquivo XML externo -
Vimos como podemos analisar XML do corpo do documento fornecido. Vamos agora colocar o seguinte conteúdo nobooks.xml arquivo -
<books>
<book>
<name>Padam History</name>
<author>ZARA</author>
<price>100</price>
</book>
<book>
<name>Great Mistry</name>
<author>NUHA</author>
<price>2000</price>
</book>
</books>
Agora tente o seguinte main.jsp, mantendo no mesmo diretório -
<%@ taglib prefix = "c" uri = "http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix = "x" uri = "http://java.sun.com/jsp/jstl/xml" %>
<html>
<head>
<title>JSTL x:parse Tags</title>
</head>
<body>
<h3>Books Info:</h3>
<c:import var = "bookInfo" url = "http://localhost:8080/books.xml"/>
<x:parse xml = "${bookInfo}" var = "output"/>
<b>The title of the first book is</b>:
<x:out select = "$output/books/book[1]/name" />
<br>
<b>The price of the second book</b>:
<x:out select = "$output/books/book[2]/price" />
</body>
</html>
Acesse o JSP acima usando http://localhost:8080/main.jsp, o seguinte resultado será exibido -
Books Info:
The title of the first book is:Padam History
The price of the second book: 2000