2014-02-18 5 views
0

Я пытаюсь извлечь тело из SOAPMessage и получаю некоторые нечетные результаты. В примере ниже должен помочь проиллюстрировать мою проблему:Неисправность тела из SOAPMessage

ByteArrayOutputStream baos = new ByteArrayOutputStream(); 
message.writeTo(baos); 
String messageString = baos.toString(); 
System.out.println("SOAP Message: " + messageString); 

System.out.println("Body: " + message.getSOAPBody()); 

С выходом:

SOAP Message: <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sch="http://adc.appcomsci.com/schema"> 
    <SOAP-ENV:Header/> 
    <SOAP-ENV:Body> 
     <sch:computeConfigurationResponse> 
      <sch:file> 
       <sch:url>http://goodSolution.com</sch:url> 
       <sch:configurationFileType>Solution</sch:configurationFileType> 
      </sch:file> 
      <sch:file> 
       <sch:url>http://error.com</sch:url> 
       <sch:configurationFileType>Diagnosis</sch:configurationFileType> 
      </sch:file> 
     </sch:computeConfigurationResponse> 
    </SOAP-ENV:Body> 
</SOAP-ENV:Envelope> 
Body: [SOAP-ENV:Body: null] 

Любая идея, почему тело является недействительным здесь? Разве это не правильный способ извлечения тела для обработки? Если нет, что мне делать по-другому?

Спасибо!

ответ

0

Ничего, я понял.

Распечатка тела фактически не отображает xml, который существует внутри тела, только фактический тег тела, который в этом случае не имел атрибутов или текста и поэтому был нулевым.

Смежные вопросы