【发布时间】:2015-06-09 15:02:16
【问题描述】:
我正在使用 JAXP XSLT API (javax.xml.transform) 来转换 xml 文件。
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer(xslSource);
transformer.transform(inputSource, outputResult);
TransformerFactory 的 javadoc 说: 它使用以下有序查找过程来确定要加载的 TransformerFactory 实现类:
- 使用 javax.xml.transform.TransformerFactory 系统属性。
- 使用 JRE 目录中的属性文件“lib/jaxp.properties”。这 配置文件是标准的 java.util.Properties 格式和 包含实现类的完全限定名称 关键是上面定义的系统属性。 jaxp.properties JAXP 实现只读取一次文件及其值 然后缓存以备将来使用。如果文件不存在时 第一次尝试从中读取,不再尝试 检查它的存在。无法更改值 jaxp.properties 中的任何属性在被读取后 第一次。
- 使用服务 API(详见 JAR 规范),如果可用,以确定类名。这 服务 API 将在文件中查找类名 罐子里的 META-INF/services/javax.xml.transform.TransformerFactory 可用于运行时。
- 平台默认 TransformerFactory 实例。
我想知道如何确定哪个是默认的 TransformerFactory 实例?
【问题讨论】: