我正在使用此代码来获取XMLStreamWriter
:
javax.xml.stream.XMLOutputFactory
.newInstance()
.createXMLStreamWriter( outputStream )
最近我不得不将 jars 包含jaxws
到我的系统中。之后,XmlStreamWriter
实施从 更改com.sun.xml.internal.stream.writers.XMLStreamWriterImpl
为com.ctc.wstx.sw.SimpleNsStreamWriter
。此类产生与 java 内部实现不同的输出。
如何通过com.sun.xml.internal.stream.XMLOutputFactoryImpl
显式使用强制java使用内部实现而不将我的代码绑定到java 6?Java 7 使用不同XMLStreamWriter
的 ,我希望我的代码也可以使用 java 7 运行。
我试过这个:
XMLOutputFactory.newFactory(
"com.sun.xml.internal.stream.XMLOutputFactoryImpl",
getClass().getClassLoader()
);
它与 Oracle JDK 6 一起使用,但与 JDK 7 一起使用会导致
javax.xml.stream.FactoryConfigurationError:
Provider for com.sun.xml.internal.stream.XMLOutputFactoryImpl cannot be found