If you've been following along, you already know how to parse XML documents using both SAX and the DOM with the Java-based Xerces XML parser. But why stop there? In this article, take your Java/XML skills to the next level by converting your XML into other formats with the very powerful Xalan XSLT engine
Xalan is an XSL engine developed by the people behind the Apache Web server. Consequently, it's fairly feature-rich and specification-compliant, with the latest version, version 2.3, coming with support for XSL 1.0, XPath 1.0 and the Java API for XML Parsing (JAXP).
Xalan can be configured to work with any XML parser that is compliant to the Java API for XML Parsing (JAXP) - I'll be using Xerces here - and can also be run as a standalone program from the command line, or within a servlet for XML-HTML transformation.
With the introductions out of the way, let's put together the tools you'll need to get started with Xalan. Here's a quick list of the software you'll need:
1. The Java Development Kit (JDK), available from the Sun Microsystems Web site (http://java.sun.com)
2. The Apache Web server, available from the Apache Software Foundation's Web site (http://httpd.apache.org)
3. The Tomcat Application Server, available from the Apache Software Foundation's Web site (http://httpd.apache.org)
4. The Xerces parser, available from the Apache XML Project's Web site (http://xml.apache.org)
5. The Xalan XSLT processor, available from the Apache XML Project's Web site (http://xml.apache.org)
6. The mod_jk extension for Apache-Tomcat communication, available from the Jakarta Project's Web site (http://httpd.apache.org)
I'm assuming here that you're familiar with XML and XSLT, and know the basics of node selection with XPath and template creation with XSLT. In case you're not, you aren't going to get much joy from this article. Flip to the end, get an education via the links included there, and then come right back for some code.