JSTL XML <x:set> Tag
Advertisements
The <x:set> tag sets a variable to the value of an XPath expression.
If the XPath expression results in a boolean, <x:set> sets a java.lang.Boolean object; for a string, java.lang.String; and for a number, java.lang.Number.
Attribute:
The <x:set> tag has following attributes:
| Attribute | Description | Required | Default |
|---|---|---|---|
| var | A variable that is set to the value of the XPath expression | Yes | Body |
| select | The XPath expression to be evaluated | No | None |
| scope | Scope of the variable specified in the var attribute | No | Page |
Example:
Following example to show you a usage of <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>
Now let us try to access above JSP, this would produce following result:
Books Info:The price of the second book:[[book: null], [book: null]] |