He configurado un SOAP WebServiceProvider en JAX-WS, pero tengo problemas para averiguar cómo obtener el XML sin formato desde un objeto SOAPMessage (o cualquier nodo). He aquí un ejemplo del código que tengo en este momento, y donde yo estoy tratando de agarrar el XML:Obtención de XML sin formato desde SOAPMessage en Java
@WebServiceProvider(wsdlLocation="SoapService.wsdl")
@ServiceMode(value=Service.Mode.MESSAGE)
public class SoapProvider implements Provider<SOAPMessage>
{
public SOAPMessage invoke(SOAPMessage msg)
{
// How do I get the raw XML here?
}
}
¿Hay una forma sencilla de obtener el código XML de la solicitud original? Si hay una forma de obtener el XML sin procesar configurando un tipo diferente de Proveedor (como Fuente), estaría dispuesto a hacerlo también.
Un 'StringWriter' es una buena alternativa a la' 'ByteArrayOutputStream' + StreamResult' combinación, si quiere el XML como 'Cadena' con la codificación correcta – artbristol