JSTL - Tag XML <x: if>

o <x:if> tag avalia um test XPath expressione se for verdade, ele processa seu corpo. Se a condição de teste for falsa, o corpo será ignorado.

Atributo

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

Atributo Descrição Requeridos Padrão
selecionar A expressão XPath a ser avaliada sim Nenhum
var Nome da variável para armazenar o resultado da condição Não Nenhum
escopo Escopo da variável especificada no atributo var Não Página

Exemplo

A seguir está um exemplo que mostra o uso do <x:if> 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 x:if 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:if select = "$output//book">
         Document has at least one <book> element.
      </x:if>
      <br />
      
      <x:if select = "$output/books[1]/book/price > 100">
         Book prices are very high
      </x:if>

   </body>
</html>

Vamos agora acessar o JSP acima, o seguinte resultado será exibido -

Books Info:

Document has at least one <book> element. Book prices are very high