Parsing XML with a simple SAX document handler : SAX « XML « Java Tutorial






import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory;

import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;

public class Main {
  public static void main(String[] argv) throws Exception {
    SAXParserFactory factory = SAXParserFactory.newInstance();
    SAXParser parser = factory.newSAXParser();
    SaxHandler handler = new SaxHandler();
    parser.parse("sample.xml", handler);
  }
}

class SaxHandler extends DefaultHandler {
  public void startDocument() throws SAXException {
    System.out.println("Document processing started");
  }
  public void endDocument() throws SAXException {
    System.out.println("Document processing finished");
  }

  public void startElement(String uri, String localName, String qName, Attributes attrs)
      throws SAXException {
    if (qName.equals("order")) {
    } else if (qName.equals("date")) {
    } else {
      throw new IllegalArgumentException("Element '" + qName + "' is not allowed here");
    }
  }

  public void endElement(String uri, String localName, String qName) throws SAXException {
  }
}








33.1.SAX
33.1.1.SAX parer with all its action displayed
33.1.2.SAX Error Checking: A Simple Implementation of the ErrorHandler Interface
33.1.3.The XMLReader interface
33.1.4.A Program to Display the Input from a SAX Parser: subclass ContentHandler
33.1.5.A Class to Convert SAX Parse Information into an XML Document
33.1.6.A Content Handler to Output a Sorted List
33.1.7.Generating SAX Parsing Events by Traversing a DOM Document
33.1.8.Intercepting All Accesses to External Entities During XML SAX Parsing
33.1.9.Accessing features of the SAX parser implementation
33.1.10.Handling SAX errors during parsing
33.1.11.Parsing XML with a simple SAX document handler
33.1.12.Configuring SAX parser factory to produce alternate parser
33.1.13.Using XML locator to indicate current parser position
33.1.14.Calling a .NET Web Service
33.1.15.Sax to DOM converter
33.1.16.Produce a SAX stream from a DOM Document