Java XML Transform transform(Source xsl, Source xml, Result result)

Here you can find the source of transform(Source xsl, Source xml, Result result)

Description

Perform an xsl transformation

License

Apache License

Declaration

public static void transform(Source xsl, Source xml, Result result) throws Exception 

Method Source Code


//package com.java2s;
/*/*  ww w. j  a  v  a2 s.  c  o m*/
 * 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();
    }
}

Related

  1. transform(Source source, Result result)
  2. transform(Source source, Source stylesheet, Map params, Properties outputProperties)
  3. transform(Source source, Templates cachedXSLT)
  4. transform(Source xmlSource, Result outputTarget)
  5. transform(Source xmlSource, Templates template, Result result, Map parameters)
  6. transform(String xmlInputFile, String xsltInputFile, OutputStream outputStream)
  7. transform(String xmlInURI, String xslInURI)
  8. transform(String xmlsource, File xsltfile)
  9. transform(String xslSource, Node original)