このコードを使用して取得していますXMLStreamWriter
:
javax.xml.stream.XMLOutputFactory
.newInstance()
.createXMLStreamWriter( outputStream )
最近、システムに の jar ファイルを含める必要がありましたjaxws
。その後、XmlStreamWriter
実装は からcom.sun.xml.internal.stream.writers.XMLStreamWriterImpl
に変更されましたcom.ctc.wstx.sw.SimpleNsStreamWriter
。このクラスは、Java 内部実装とは異なる出力を生成します。
com.sun.xml.internal.stream.XMLOutputFactoryImpl
明示的に使用してコードをJava 6にバインドせずに、Javaに内部実装を使用させるにはどうすればよいですか? 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