Как разобрать заголовок Soap с помощью xpath в SOAPHandler

#java #soap #xpath

#java #soap #xpath

Вопрос:

Я разработал обработчик soap, который перехватывает входящее сообщение и извлекает значения из SOAPHeader.

я использую следующий код для чтения soapheader

 SOAPMessage soapMessage=  context.getMessage();
SOAPPart soapPart = soapMessage.getSOAPPart();
SOAPEnvelope soapEnvelope = soapPart.getEnvelope();
SOAPHeader soapHeader = soapEnvelope.getHeader(); 
  

Теперь, как я могу создать документ из объекта SOAPHeader, чтобы я мог использовать его в xPathExpression.evaluate

Из документа я имею в виду org.w3c.dom.Документ.

Я получил ответ

Мы можем создать документ, используя следующий код

 ByteArrayOutputStream out = new ByteArrayOutputStream(); 

soapMessage.writeTo(out); 

InputStream is = new ByteArrayInputStream( out.toByteArray() ); 
doc = docBuilder.parse( is );
  

С уважением,
имран

Ответ №1:

Мы можем напрямую применить синтаксический анализ к soapheader следующим образом

Список узлов узлов =SOAPHeader.getElementsByTagName(«параметр»);

Нет необходимости в xpath.

С уважением,