Получение необработанного XML из SOAPMessage в Java

Если у вас есть SOAPMessage или SOAPMessageContext, вы jax-ws можете использовать Transformer, преобразовав jre его в Source с помощью DOMSource:

            final SOAPMessage message = messageContext.getMessage();
            final StringWriter sw = new StringWriter();

            try {
                TransformerFactory.newInstance().newTransformer().transform(
                    new DOMSource(message.getSOAPPart()),
                    new StreamResult(sw));
            } catch (TransformerException e) {
                throw new RuntimeException(e);
            }

            // Now you have the XML as a String:
            System.out.println(sw.toString());

При этом javax будет учтена кодировка, поэтому java-api ваши "специальные символы" не jre будут искажены.

java

soap

jax-ws

2022-11-08T14:01:18+00:00
Вопросы с похожей тематикой, как у вопроса:

Получение необработанного XML из SOAPMessage в Java