Use of <x:transform> tag of JSTL

In this section we will learn how to use <x:parse> tag of Xml tag library of Jstl. This tag is used to transform the specified xml document.

Use of <x:transform> tag of JSTL

Use of <x:transform> tag of JSTL

     

In this section we will learn how to use <x:parse> tag of  Xml tag library of Jstl. This tag is used to transform the specified xml document. With the use of this tag we can display data from xml document in a format that is already defined in .xslt file.

 

 

 

 

 

 

Standard Syntax : <%@ taglib prefix="x" uri="http://java.sun.com/jsp/jstl/xml" %>

 Attributes: 
  var  Name of the variable used to store parsed xml content.
   result  Result object that capture the result after transformation.
   scope  Defines scope of the defined variable in var attribute.
  xml  This is deprecated attribute, now we are using 'doc' attribute.
xmlSystemId  This is deprecated attribute, used with attribute 'xml'.
doc  Source xml document to be transformed.
docSystemId  URI of the xml document.
xslt  javax.xml.transform.Source Transformation stylesheet.
xsltSystemId  URI of the xslt document.

transform_xmlJstlTag.jsp

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="x" uri="http://java.sun.com/jsp/jstl/xml" %>
<c:import var="xml" url="employee.xml" />
<c:import var="xsl" url="employee.xsl" />

<x:transform xml="${xml}" xslt="${xsl}" />

employee.xml

<?xml version="1.0" encoding="UTF-8"?>
<org>
    <company>
        <emp>
            <name>Ravi Kant</name>
            <designation>Sr. Sofware developer</designation>
            <age>28</age>
        </emp>
        <emp>
            <name>Suman Saurabh</name>
            <designation>Sr Graphics Designer</designation>
            <age>27</age>
        </emp>
    </company>
    <company>
    <emp>
        <name>Vinod Kumar</name>
        <designation>Sr. Java Programmer</designation>
        <age>27</age>
    </emp>
    <emp>
        <name>Mr. Santosh</name>
        <designation>Sr. Flash Programmer</designation>
        <age>25</age>
    </emp></company>
</org>

employee.xsl

<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:param name="doc"/>
    <xsl:template match="/">
        <html>
            <body>
                <h2>Company's Employee detail</h2>
                <table border="1">
                    <tr>
                        <th align="left">name
                        </th>
                        <th align="left">designation
                        </th>
                        <th align="left">age
                        </th>
                    </tr>
                    <xsl:for-each select="org/company/emp">
                        <tr>
                            <td>
                                <xsl:value-of select="name"/>
                            </td>
                            <td>
                                <xsl:value-of select="designation"/>
                            </td>
                            <td>
                                <xsl:value-of select="age"/>
                            </td>
                        </tr>
                    </xsl:for-each>
                </table>
            </body>
        </html>
    </xsl:template>
</xsl:stylesheet>

Output :



Download Source Code