我正在從遷移JBoss EAP 6.4到EAP 7.1. 我已將 Apache CXF 從 2.7.14 更新到 3.1.16,但現在我錯過了該DOMUtils.writeXml(Node n, OutputStream os)方法。在這種情況下更換它的最佳方法是什么?SOAPMessage soapMessage = message.getContent(SOAPMessage.class);SOAPBody env = soapMessage.getSOAPPart().getEnvelope().getBody();ByteArrayOutputStream baos = new ByteArrayOutputStream(); DOMUtils.writeXml(env, baos);String soapBody = baos.toString();
1 回答

白豬掌柜的
TA貢獻1893條經驗 獲得超10個贊
我已經替換DOMUtils.writeXml(Node n, OutputStream os)使用javax.xml.transform.TransformerFactory:
SOAPMessage soapMessage = message.getContent(SOAPMessage.class);
SOAPBody env = message.getSOAPPart().getEnvelope().getBody();
javax.xml.transform.dom.DOMSource source = new javax.xml.transform.dom.DOMSource(env);
StringWriter stringResult = new StringWriter();
javax.xml.transform.TransformerFactory.newInstance().newTransformer().transform(source, new StreamResult(stringResult));
String soapBody = stringResult.toString();
添加回答
舉報
0/150
提交
取消