Java tutorial
//package com.java2s; /* * Copyright 2010 Vamonos Software * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ import java.io.InputStream; import java.io.StringWriter; import java.io.Writer; import javax.xml.transform.Result; import javax.xml.transform.Source; import javax.xml.transform.Templates; import javax.xml.transform.Transformer; import javax.xml.transform.TransformerFactory; import javax.xml.transform.stream.StreamResult; import javax.xml.transform.stream.StreamSource; public class Main { /** * Perform an xsl transformation */ public static void transform(Source xsl, Source xml, Result result) throws Exception { TransformerFactory factory = TransformerFactory.newInstance(); Templates template = factory.newTemplates(xsl); Transformer transformer = template.newTransformer(); transformer.transform(xml, result); } /** * Perform an xsl transformation */ public static void transform(InputStream xsl, InputStream xml, Writer result) throws Exception { transform(new StreamSource(xsl), new StreamSource(xml), new StreamResult(result)); } /** * Perform an xsl transformation, returning the result as a String. * Example use: * <pre> * String html = XmlUtil.transform(this.getClass().getResourceAsStream("/sample.xslt"), new URL(sampleurl).openStream()); * </pre> */ public static String transform(InputStream xsl, InputStream xml) { StringWriter sw = new StringWriter(); try { transform(xsl, xml, sw); } catch (Exception ex) { throw new RuntimeException("Could not perform transformation", ex); } return sw.toString(); } }