Listing 3: Parsing XML using the DefaultHandler.

/** Inner class which receives the SAX handler notification. */
private class Handler extends DefaultHandler {

  public void startDocument() throws SAXException {
    infoList = new ArrayList<XMLTileFactoryInfo>();
  }

  public void startElement(String uri, String localName, String qName,
      Attributes attributes) throws SAXException {
    currentString = new StringBuffer();
    if (qName.equals("FactoryInfo")) {
      init();
    }
  }

  public void endElement(String uri, String localName, String qName)
      throws SAXException {
    String s = currentString.toString().trim();
    if (qName.equals("MinimumZoomLevel")) {
      minimumZoomLevel = Integer.parseInt(s);
    } 

    // several lines omitted

    else if (qName.equals("FactoryInfo")) {
      buildFactoryInfo();
    }
    currentString = new StringBuffer();
  }

  public void characters(char buf[], int offset, int len)
      throws SAXException {
    String s = new String(buf, offset, len);
    currentString.append(s);
    if (!(s.endsWith("\n") || !s.endsWith("\r"))) {
      currentString.append("\n");
    }
  }

}

How to Add Java Applets to Your Site

New on the Java Boutique:

New Review:

Time Management Made Easy with the Quartz Enterprise Job Scheduler
Why not just use the Java timer API? This open source scheduling API boasts simplicity, ease-of-integration, a well-rounded feature set, and it's free!

New Applet:

Reverse Complement
Reverse Complement is a simple applet that converts DNA or RNA sequences into three useful formats.

Elsewhere on internet.com:

WebDeveloper Java
Lots of Java information on webdeveloper.com

WDVL Java
Thorough Java resource at the Web Developer's Virtual Library.

ScriptSearch Java
Hundreds of free Java code files to download.

jGuru: Your View of the Java Universe
Customizable portal with online training, FAQs, regular news updates, and tutorials.