Java Soap request - reading soap response

Viewed 60192

I'm trying to get specific values from response I get from webservice. Unfortunately I don't know how to do it. I used code found on stackoverflow for creating soap request and writing out response content into stdout:

private static void printSOAPResponse(SOAPMessage soapResponse) throws Exception {
    TransformerFactory transformerFactory = TransformerFactory.newInstance();
    Transformer transformer = transformerFactory.newTransformer();
    Source sourceContent = soapResponse.getSOAPPart().getContent();
    System.out.print("\nResponse SOAP Message = ");
    StreamResult result = new StreamResult(System.out);
    transformer.transform(sourceContent, result);
}

It all works well but I dont need whole response content:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:bin="http://localhost/WebService/bindings" xmlns:typ="http://localhost/WebService/types">
   <soapenv:Header/>
   <soapenv:Body>
      <bin:doActionResponse>
         <bin:out>
            <typ:result>
               <typ:code>?</typ:code>
               <typ:description>?</typ:description>
            </typ:result>
         </bin:out>
      </bin:doActionResponse>
   </soapenv:Body>
</soapenv:Envelope>

I just need value of code and description from this response. How can I do this?

1 Answers
Related