JSTL - XML <x:param> Tag


Advertisements

The <x:param> tag is used along with the transform tag to set a parameter in the XSLT stylesheet

Attribute

The <x:param> tag has the following attributes −

Attribute Description Required Default
name Name of the XSLT parameter to set Yes Body
Value Value of the XSLT parameter to set No None

Example

Consider the following XSLT stylesheet style.xsl. Note the usage of <xsl:param...> tag and a variable {$bgColor}

<?xml version = "1.0"?>
<xsl:stylesheet xmlns:xsl = "http://www.w3.org/1999/XSL/Transform" version = "1.0">

<xsl:output method = "html" indent = "yes"/>
<xsl:param name = "bgColor"/>

   <xsl:template match = "/">
      <html>
         <body>
            <xsl:apply-templates/>
         </body>
      </html>
   </xsl:template>

   <xsl:template match = "books">
      <table border = "1" width = "50%" bgColor = "{$bgColor}">
         <xsl:for-each select = "book">
            <tr>
               <td><i><xsl:value-of select = "name"/></i></td>
               <td><xsl:value-of select = "author"/></td>
               <td><xsl:value-of select = "price"/></td>
            </tr>
         </xsl:for-each>
      </table>
   </xsl:template>
   
</xsl:stylesheet>

Consider the following JSP file where we define the value of bgColor using the <x:param> tag inside the <x:transform> 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:transform 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>

      <c:import url = "http://localhost:8080/style.xsl" var = "xslt"/>
      <x:transform xml = "${xmltext}" xslt = "${xslt}">
         <x:param name = "bgColor" value = "grey"/>
      </x:transform>

   </body>
</html>

You will receive the following result −

Books Info:

Padam History ZARA 100
Great Mistry NUHA 2000
jsp_standard_tag_library.htm

Useful Video Courses


Video

JSP, Servlet, JSLT + Hibernate: A complete guide

108 Lectures 11 hours

Chaand Sheikh

Video

Full Stack Java developer - Java + JSP + Restful WS + Spring

Best Seller

517 Lectures 57 hours

Chaand Sheikh

Video

Servlets and JSP Tutorial For Beginners!

41 Lectures 4.5 hours

Karthikeya T

Video

JSP and Servlets - The Complete Course

42 Lectures 5.5 hours

TELCOMA Global

Video

JSP and Servlets Bootcamp: Web Applications for Beginners

15 Lectures 3 hours

TELCOMA Global

Video

JSP (Java Server Pages) Certification Training

44 Lectures 15 hours

Uplatz

Advertisements