Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将org.wc3.dom.Element Java对象写入javax.xml.stream.XMLStreamWriter的最佳方式是什么?_Java_Xml - Fatal编程技术网

将org.wc3.dom.Element Java对象写入javax.xml.stream.XMLStreamWriter的最佳方式是什么?

将org.wc3.dom.Element Java对象写入javax.xml.stream.XMLStreamWriter的最佳方式是什么?,java,xml,Java,Xml,我需要将org.wc3.dom.Element对象写入javax.xml.stream.XMLStreamWriter 我在的类中找到了我所需要的,它有如下方法 writeDocument(org.w3c.dom.Document d, javax.xml.stream.XMLStreamWriter writer, boolean writeProlog, boolean repairing) writeNode(org.w3c.dom.Node n, javax.xml.stream.XM

我需要将org.wc3.dom.Element对象写入javax.xml.stream.XMLStreamWriter

我在的类中找到了我所需要的,它有如下方法

writeDocument(org.w3c.dom.Document d, javax.xml.stream.XMLStreamWriter writer, boolean writeProlog, boolean repairing) 
writeNode(org.w3c.dom.Node n, javax.xml.stream.XMLStreamWriter writer, boolean repairing) 
writeElement(org.w3c.dom.Element e, javax.xml.stream.XMLStreamWriter writer, boolean repairing, boolean endElement) 
etc..
然而,这是一个相当特殊的jar,它依赖于staxapijar等。。我宁愿不使用它

我可以自己编写一个基于StatUtils实现的实用程序,遍历元素并执行WriteStarteElement(String)、writeCharacters(String)和writeEndElement调用,但我更愿意使用现有的实用程序类

除了cxf公共工具jar之外,还有人知道一些更基本的xml-util-jar,其中包含类似的方法吗?
或者在我没有看到的标准JDK类中有更简单的方法来实现这一点吗?

您可以使用从
DOMSource
StAXResult
的方法来实现这一点。源代码可以从
元素
构建,它不必是一个完整的
文档

您查看过这个类吗?该类在xerces中可用。我无法将该类用于此用例。我的要求是编写org.wc3.dom.Element对象,作为javax.xml.stream.XMLStreamWriter的输入。这两种类型我都不能更改。只需将元素添加到没有XML声明的文档中。这是什么意思?如果您的意思是将元素转换为字符串并在XMLStreamWriter上使用writeCharacters:这不起作用,因为所有传递的字符都被转义。如果您打算不使用XMLStreamWriter:那么,我不是在寻找替代方案。我知道有很多API可以将元素写入输出流或文件。不幸的是,在这种情况下,我必须使用XMLStreamWriter。我是认真的。顺便说一下,您提到的是来自[Xerces XML Commons](Xerces.apache.org/mirrors.cgi)项目。这就是你所看到的一个罐子。