Latest Tutorials| Questions and Answers|Ask Questions?|Site Map



Home Jsp Retrieving Data From the XML file

Related Tutorials


 
 

Share on Google+Share on Google+

Retrieving Data From the XML file

Advertisement
In this example we will examine how to parse and expose XML information using the JAXP with a JSP page. This example is only geared towards showing how to construct a Java object from an XML document.

Retrieving Data From the XML file

     

In this example we will examine how to parse and expose XML information using the JAXP with a JSP page. This example is only geared towards showing how to construct a Java object from an XML document. 

By this example we are going to get the XML data from the xml file in our jsp file. We have a XML file in which we have some data. What we need is to retrieve the data from the xml file. This xml file has all the information about the airline schedule. 

To make a program over it we have used the following page directive attributes, the first attribute we have used is contentType and the second attribute is import. We need to import some classes and packages which we have described in the program. 

Inside the scriptlet firstly we will define a factory API which allows our application to obtain a Java XML  parser. DocumentBuilderFactory defines a factory API. Now create a DocumentBuilder object to parse an org.w3c.dom.Document from XML. Save the xml file at bin file of  C:\apache-tomat-5.5.23\bin\. Now we need to parse method to actually parse the XML file to create our own Document object. Document object will be created by parse method of the DocumentBuilder

From the Document object we will get a NodeList object represents all of the elements in our XML document name message. NodeList object will be obtained by the getElementByTagName(). 

A NodeList is an array starting from 0 and going up to the length of the array by calling getFirstChild() method. By using this method the desired text node is returned and we can use getNodeValue() for our message. 

The code of the airLineShedule.xml file:

<?xml version="1.0" encoding="UTF-8"?>
 <Flights>
   <AirCarrier>AA</AirCarrier>
   <FlightNumber>700</FlightNumber>
  
      <City>DFW</City>
      <Date>30Mar</Date>
      <Scheduled>9.0am
      </Scheduled>
      <Status>ON TIME</Status>
      <Gate>C16</Gate>
      <OffGateTime>0644A</OffGateTime>
      <OffGroundTime>0632A</OffGroundTime>
   
</Flights>

Code of the airLineSheduler.jsp file:

<!-- page Directive used -->
<%@ page contentType="text/html"%>
<%@ page import="javax.xml.parsers.DocumentBuilderFactory,
javax.xml.parsers.DocumentBuilder,org.w3c.dom.*"
%>
<html>
<body><center><table border="2">

<%
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = db.parse("\\airLineShedule.XML");

NodeList nl= doc.getElementsByTagName("AirCarrier");
NodeList n1= doc.getElementsByTagName("FlightNumber");
NodeList n2= doc.getElementsByTagName("City");
NodeList n3= doc.getElementsByTagName("Date");
NodeList n4= doc.getElementsByTagName("Scheduled");
NodeList n5= doc.getElementsByTagName("Status");
NodeList n6= doc.getElementsByTagName("Gate");
NodeList n7= doc.getElementsByTagName("OffGateTime");
NodeList n8= doc.getElementsByTagName("OffGroundTime");

%>

<tr>
<td colspan="2"><h4>AirLine Shedule</h4></td> 
</tr>
<tr>
<td>AirCarrier</td>
<td><%= nl.item(0).getFirstChild().getNodeValue() %> </td>
</tr>
<tr><td>FlightNumber</td>
<td><%= n1.item(0).getFirstChild().getNodeValue() %> </td>
</tr>
<tr>
<td>City</td>
<td><%= n2.item(0).getFirstChild().getNodeValue() %> </td></tr>
<tr><td>Date</td>
<td><%= n3.item(0).getFirstChild().getNodeValue() %> </td></tr>
<tr><td>Scheduled</td>
<td><%= n4.item(0).getFirstChild().getNodeValue() %> </td></tr>
<tr><td>Status</td>
<td><%= n5.item(0).getFirstChild().getNodeValue() %> </td></tr>
<tr><td>Gate</td>
<td><%= n6.item(0).getFirstChild().getNodeValue() %> </td></tr>
<tr><td>OffGateTime</td>
<td><%= n7.item(0).getFirstChild().getNodeValue() %> </td>
</tr>
<tr><td>OffGroundTime</td>
<td><%= n8.item(0).getFirstChild().getNodeValue() %> 
</td>
</tr>
</table>
</center>
</body>
</html>

 

The output of the program is given below:

 

Download this example.

Download airLineShedule.xml file.

Download airLineSheduler.txt file.

Advertisement

If you enjoyed this post then why not add us on Google+? Add us to your Circles



Liked it!  Share this Tutorial


Follow us on Twitter, or add us on Facebook or Google Plus to keep you updated with the recent trends of Java and other open source platforms.

Posted on: March 13, 2008

Related Tutorials

Discuss: Retrieving Data From the XML file   View All Comments

Post your Comment


Your Name (*) :
Your Email :
Subject (*):
Your Comment (*):
  Reload Image
 
 
Comments:0
DMCA.com