More Tutorials
GETTING STARTED WITH XERCES

This document briefly summarizes the steps necessary for using Xerces library to manipulate XML documents.

CSIL Lab has successfully installed 'xerces.jar' in gemini, at path: /WWW/xml/xerces.jar.

Xerces is also available for download from APACHE or IBM. You may find the documentations on these web sites. For your convenience, we've uploaded the whole documentation package here.

When compiling and running Java program (or Servlet) on gemini, you have to include the path to xerces.jar into the classpath.CSIL has already include the path in the classpath of JServ.

 

A small example of Xerces Java

 

Creating a DOM Parser:

To use the Xerces DOM interface, you must first instantiate a DOM Parser object (org.apache.xerces.parsers.DOMParser):

DOMParser parser = new DOMParser();

You can then parse any XML file via the parse() method:

parser.parse ("store.xml");

To parse an external XML file, specify an absolute URL string. For example:

parser.parse ("http://www.emovies.com/xmldata/store.xml");

Our example illustrates the basic steps in creating a DOM application. The applications takes as a command line argument the name of an XML file. It then parses the XML file, traverses the DOM tree, and prints out all element names.

For example, given the store.xml file which contains all the movie information about the store, the application might output (based on the format of the xml document) the following: MOVIE NAME IMAGE .....

Note that the traverse() method is responsible for examining each node and "walking" the DOM tree. This is accomplished via the getChildNodes() method, and calling the traverse() method recursively for each child node.

SOURCE CODE:

BasicDOM.java
import org.apache.xerces.parsers.DOMParser;
import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.w3c.dom.Element;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;
import java.io.IOException;

//  A Simple DOM Application
public class BasicDOM {
   
   // Constructor
   public BasicDOM (String xmlFile) {
      
      //  Create a Xerces DOM Parser
      DOMParser parser = new DOMParser();

      //  Parse the Document     
      //  and traverse the DOM
      try {
         parser.parse(xmlFile);
         Document document = parser.getDocument();
         traverse (document);
      } catch (SAXException e) {
         System.err.println (e);
      } catch (IOException e) {
         System.err.println (e);
      }
   }
   
   //  Traverse DOM Tree.  Print out Element Names
   private void traverse (Node node) {
      int type = node.getNodeType();
      if (type == Node.ELEMENT_NODE)
         System.out.println (node.getNodeName());
      NodeList children = node.getChildNodes();
      if (children != null) {
         for (int i=0; i< children.getLength(); i++) 
            traverse (children.item(i));  
      }
   }
   
   // Main Method
   public static void main (String[] args) {
      BasicDOM basicDOM = new BasicDOM (args[0]);
   }
}
 

 
More Tutorials