The Java standard library provides an (XSLT) transformation interface for XML parsing. See the API documentation for the classes javax.xml.transform.Transformer and javax.xml.transform.TransformerFactory.
where %out% is the name of the output file, %xml% is the xml file, %xsl% is the primary xslt file and %param[ name=\"value\"]% is a name-value list of external parameters (I almost always leave this empty).
JAXP provides a implementation independent way of working with XSLT transformations. Here is the tutorial to get you started. If you are working with huge XSLT and/or working with multiple XSLT's then there is also an option of caching the parsed XSLT templates for performance reasons. This article explains how to cache xslt's