0

我必须进行 xsl 转换,在其中我将传递示例输入 xml 以最终实现最终转换 xml,我已经使用转换器的 java api 编写了程序,请有人告诉我如何编写相同的程序以便它与xalan api 2.7.1 也是,下面是带有 jaa 的代码,我需要将它与 xalan 兼容

import javax.xml.transform.*;
import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.stream.StreamSource;
import java.io.File;
import java.io.IOException;
import java.net.URISyntaxException;

public class TestMain {
    public static void main(String[] args) throws IOException, URISyntaxException, TransformerException {
        TransformerFactory factory = TransformerFactory.newInstance();
        Source xslt = new StreamSource(new File("transform.xslt"));
        Transformer transformer = factory.newTransformer(xslt);

        Source text = new StreamSource(new File("input.xml"));
        transformer.transform(text, new StreamResult(new File("output.xml")));
    }
} 
4

1 回答 1

1

您需要用于 Xalan的 API标准javax.xml.transformAPI,无需更改。如果 Xalan 在您的应用程序的类路径中,那么

TransformerFactory.newInstance();

将创建一个 Xalan 转换器,而不是使用 Java 内置实现(它本身就是 Xalan 的一个分支)。如果你想强制一个特定的转换器实现,那么使用两个参数的形式

TransformerFactory.newInstance("org.apache.xalan.processor.TransformerFactoryImpl", null);
于 2013-10-28T15:02:22.040 回答