JSTL - Tag XML <x: set>

o <x:set> tag define uma variável para o valor de uma expressão XPath.

Se a expressão XPath resultar em um booleano, <x:set>tag define um objeto java.lang.Boolean; para uma string, java.lang.String; e para um número, java.lang.Number.

Atributo

o <x:set> tag tem os seguintes atributos -

Atributo Descrição Requeridos Padrão
var Uma variável que é definida com o valor da expressão XPath sim Corpo
selecionar A expressão XPath a ser avaliada Não Nenhum
escopo Escopo da variável especificada no atributo var Não Página

Exemplo

O exemplo a seguir mostrará como usar o <x:set> tag -

<%@ 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 Tags</title>
   </head>

   <body>
      <h3>Books Info:</h3>

      <c:set var = "xmltext">
         <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>
      </c:set>

      <x:parse xml = "${xmltext}" var = "output"/>
      <x:set var = "fragment" select = "$output//book"/>
      <b>The price of the second book</b>: 
      <c:out value = "${fragment}" />
   </body>
</html>

Acesse o JSP acima, o seguinte resultado será exibido -

Books Info:

The price of the second book:[[book: null], [book: null]]