JDK 1.6包含通过JAX-WS API使用FastInfoset Web服务的功能。这些的实现都是内部com.sun.xml.internal
深藏不露,与旨在把对上帝的敬畏到任何明智的Java开发包的名称(如com.sun.xml.internal.fastinfoset.stax.StAXDocumentParser
(实现XMLStreamReader
)和com.sun.xml.internal.fastinfoset.stax.StAXDocumentSerializer
(实现XMLStreamWriter
)。抓住FastInfoset读取器和编写器
我的理解是,使用这些FastInfoset实现是内部JAX-WS内容协商逻辑的一部分,因此不会暴露给公共API。但是,我想明确使用FastInfoset实现,使用它们的公共STAX接口,并且可以通过public工厂级,而不是直接参考这些内部包。
有谁知道这个设施是否可用,也许通过标准的STAX工厂?
但是那些工厂只会让你回到他们认为最好的实现,你不能说“我想要一个FastInfoset实现”......或者你可以吗? – skaffman 2010-01-22 15:27:53
我认为你不能 - 他们使用静态的FactoryFinder.find方法。但我认为他们应该回报你所需要的。 – Bozho 2010-01-22 15:37:47
看起来我需要在使用'XMLInputFactory.newFactory()'时传入FastInfoset实现的类名。这并不比直接实例化好很多,但它是朝着正确方向迈出的一步。 – skaffman 2010-01-22 15:44:05