Home | Ajax | BioInformatics | Dojo | EAI | EJB | Hibernate | J2ME | Java | Java Glossary | Java Servlets | JavaScript | Jboss | JDBC | JDO | Jmeter | JSF | JSP | JUnit | Maven | MySQL | Spring Framework | SQL | Struts | Technology | WAP | Web Services | XML

Search:
   Programming Tutorials: Ajax | Articles | JSP | Bioinformatics | Database | Free Books | Hibernate | J2EE | J2ME | Java | JavaScript | JDBC | JMS | Linux | MS Technology | PHP | RMI | Web-Services | Servlets | Struts | UML Facing Programming Problem? Ask Questions?, Browse Latest Questions, Question-Answer Guidelines
JSP
  JDO Tutorials
  EAI Articles
  Struts Tutorials
  Java Tutorials
  Java Certification
  Java Applet
Questions
Comments
XML Transformation in JSP
This example illustrate use of XML transformation tag in JSP file. This example performs transformation from an XML file to XSLT stylesheet.
 
 

XML Transformation in JSP

                          

Example program to demonstrate XML Transformation tag in JSP

This example illustrate use of XML transformation tag in JSP file. This example performs transformation from an XML file to XSLT stylesheet. XML transform tag performs transformation from XML file to XSLT file. Syntax for XML transform tag is as below:

 

 

 

<x:transform
 {xmlUrl="URLofXMLDocument"|xmlText="XMLDocument"}
 {xsltUrl="URLofXSLT"|xsltText="XSLTStylesheet"}
 [{var="varName"|result="resultObject"}]
 [scope="{page|request|session|application}"] />

In <x:transform> tag "xmlUrl" allows you to specify a URL from where the XML data is coming. Likewise xsltUrl also specifies XSL file URL from where XSL data is coming. You can also have data from internal source by "xmlText" and "xsltText" attributes. Scope may be page, request, session, application. This example is having user.xml file which is containing information of user such as their fname, mname, lname and age. These information is shown into XML-XSL Transform JSP page by transforming and checking the data with "parameters.xsl". This is being done by the following  code:

<c:import url="http://localhost:8080/Example/user.xml"
               var="inputvalue" />

<c:import url="http://localhost:8080/Example/parameters.xsl"
               var="stylesheet" />

<x:transform xml = "${inputvalue}"
                    xslt = "${stylesheet}">
<x:param name="nameParam" value="ankit" />
</x:transform>

<x:transform> tag is using variable "inputvalue" which is url of xml document and variable "stylesheet" is containing url of xsl document. In <x:transform> tag we have passed one parameter and its value, which is playing an important role in this transformation.  

 1. user.xml

<?xml version="1.0"?>
<user>
   <information>
      <fname>amit</fname>
      <mname>kumar</mname>
      <lname>raghuwanshi</lname>
      <age>21</age>
   </information>
   <information>
     <fname>sandeep</fname>
     <mname>kumar</mname>
    <lname>suman</lname>
    <age>23</age>
   </information>
</user>

In parameters.xsl file we are setting the parameter name as we have passed in JSP file. In this XSL file we have called template "processuser" to process user information which is checking all user information "fname" with parameter "nameParam", if it is not equal to nameParam's value then its showing [new value] on browser.

<xsl:template name="processuser">
  <tr> <td>
    <xsl:value-of select="fname/text()" />
    <xsl:if test="fname/text() != $nameParam"> [new value]
    </xsl:if>
    </td> <td>
             <xsl:value-of select="mname/text()" />
    </td> <td>
             <xsl:value-of select="lname/text()" />
    </td> <td>
             <xsl:value-of select="age/text()" />
    </td> </tr> 
  </xsl:template>

Full code of parameters.xsl is as shown below: 

2. parameters.xsl

<xsl:transform xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:param name="nameParam">ankit</xsl:param>

<xsl:template match="user">
   <h1>List of user in the XML document</h1>
   <table border="1" cellpadding="3">
    <th>FirstName</th><th>MidName</th><th>LastName</th><th>Age</th>
         <xsl:apply-templates />
    </table>
</xsl:template>

<xsl:template match="information">
<xsl:call-template name="processuser">
<xsl:with-param name="nameParam">amit</xsl:with-param>
</xsl:call-template>
</xsl:template>

 <xsl:template name="processuser">
  <tr><td>
    <xsl:value-of select="fname/text()" />
    <xsl:if test="fname/text() != $nameParam">[new value]
    </xsl:if>
    </td><td>
             <xsl:value-of select="mname/text()" />
    </td><td>
             <xsl:value-of select="lname/text()" />
    </td><td>
             <xsl:value-of select="age/text()" />
    </td></tr> 
  </xsl:template>
</xsl:transform>

3. XML-XSL Transform

<%@ taglib uri="http://java.sun.com/jstl/xml" prefix="x" %>
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>

<html >
<head>
<title>Using a Named Template with Global Parameters</title>
</head>

<body>
<c:import url="http://localhost:8080/Example/user.xml"
               var="inputvalue" />

<c:import url="http://localhost:8080/Example/parameters.xsl"
               var="stylesheet" />

<x:transform xml = "${inputvalue}"
                    xslt = "${stylesheet}">
<x:param name="nameParam" value="ankit" />
</x:transform>
</body>
</html>

Output:

user.xml file

To run or execute this example follow these steps:

  • Download all jar files required for JSTL xml tag use.
  • Create and save user.xml.
  • Create and save parameters.xsl
  • Create and save XML-XSL Transform.jsp
  • Run tomcat server and type following url in address bar
    http://localhost:8080/Example/XML-XSLTransoform.jsp

Download Source Code

                          

Leave your comment:

Name:

Email:

URL:

Title:

Comments:


Enter Code:

Audio Version
Reload Image
 

Note: Emails will not be visible or used in any way, and are not required. Please keep comments relevant. Any content deemed inappropriate or offensive may be edited and/or deleted.

No HTML code is allowed. Line breaks will be converted automatically. URLs will be auto-linked. Please use BBCode to format your text.

Add This Tutorial To:
  Del.icio.us   Digg   Google   Spurl   Blink   Furl   Simpy   Y! MyWeb 
Latest Tutorials:
J2ME Servlet Example
J2ME Cookies Example
J2ME Frame Animation2
J2ME Frame Animation
J2ME RMS Read Write
J2ME Record Data Base
J2ME Audio Record
J2ME Record Listener
J2ME Text Box Example
J2ME Timer Animation
J2ME Vector Example
J2ME Video Control Exa
J2ME Event Handling Ex
J2ME HashTable Example
J2ME Icon MIDlet Examp
J2ME Image Item Exampl
J2ME Image Example
J2ME Item State Listen
J2ME Key Codes Example
J2ME KeyEvent Example
J2ME Label Example
J2ME Random Number
J2ME Read File
J2ME RMS Sorting Examp
J2ME Timer MIDlet Exam
Custom Item in J2ME
Creational Design Patt
Design Patterns
Throwing Run time exce
Grid in Echo3
Creating Table in Echo
JPA Introduction
Java bigdecimal toBigI
Java bigdecimal shortV
Java bigdecimal shortV
Java bigdecimal signum
Java bigdecimal stripT
Java bigdecimal subtra
Java bigdecimal subtra
Java bigdecimal toBigI
Java bigdecimal toEngi
Java bigdecimal toPlai
Java bigdecimal toStri
Java bigdecimal ulp ex
Java bigdecimal unscal
Java bigdecimal valueO
Java bigdecimal valueO
Java bigdecimal valueO
Java bigdecimal setSca
Java bigdecimal setSca
Java bigdecimal scaleB
Java bigdecimal scale
Java bigdecimal round
Java bigdecimal remain
Java bigdecimal remain
Java bigdecimal precis
Java bigdecimal pow me
Java bigdecimal pow ex
Java bigdecimal plus m
Java bigdecimal plus e
Java bigdecimal negate
Java bigdecimal negate
Java bigdecimal multip
Java bigdecimal multip
Java BigDecimal movePo
Java bigdecimal movePo
Java bigdecimal min ex
Java bigdecimal max ex
CheckBox component in
Visibility of Componen
Loading delay componen
Simple input applicati
Opening a new window i
Hello World in Echo3 f
Use of Local Inner cla
JSP bean set property
Java Method Synchroniz
Java Method Return Val
JAVA Method Wait
JDBC vs ORM
Java BigDecimal divide
Java BigDecimal divide
Java BigDecimal divide
Java BigDecimal divide
Java BigDecimal divide
Java BigDecimal double
Java BigDecimal equals
Java BigDecimal hashCo
Java BigDecimal intVal
Java BigDecimal intVal
Java BigDecimal longVa
Java BigDecimal longVa
Java BigDecimal abs ex
Java BigDecimal add ex
Java BigDecimal byteVa
Java Bigdecimal class
Java BigInteger long
Java BigDecimal compar
Java divide method exa
Java BigDecimal floatV
Java String toLowerCase Example
Java String toCharArray Example
Java String substring Example
Java String indexOf Example
Java String startsWith Example
Java String hashCode Example
Java String matches Example
Java String length Example
Java String lastIndexOf Example
Java String isEmpty Example
Java String equalsIgnoreCase Example
Java String equals Example
Java String endsWith Example
Java String copyValueOf Example
Java String contentEquals Example
  EAI Articles
  Java Certification
Tell A Friend
Your Friend Name
Search Tutorials

 

 
 
Browse all Java Tutorials
Java JSP Struts Servlets Hibernate XML
Ajax JDBC EJB MySQL JavaScript JSF
Maven2 Tutorial JEE5 Tutorial Java Threading Tutorial Photoshop Tutorials Linux Technology
Technology Revolutions Eclipse Spring Tutorial Bioinformatics Tutorials Tools SQL
 

Home | JSP | EJB | JDBC | Java Servlets | WAP  | Free JSP Hosting  | Search Engine | News Archive | Jboss 3.0 tutorial | Free Linux CD's | Forum | Blogs

About Us | Advertising On RoseIndia.net  | Site Map

India News

Indian Software Development Company | iPhone Development Company in India | Java Training Delhi | Java Training at Noida |

Send your comments, Suggestions or Queries regarding this site at roseindia_net@yahoo.com.

Copyright © 2008. All rights reserved.