简体   繁体   English

Spring-WS SOAP将子元素添加到标头

[英]Spring-WS SOAP add sub elements to header

How do i add sub elements to the SOAP header. 如何将子元素添加到SOAP标头中。 I'm using old Spring ws 1.5.5 released in 2008/9. 我使用的是2008/9发行的旧版Spring ws 1.5.5。

  SoapHeader header = soapMsgResponse.getSoapHeader();
  SoapHeaderElement loggingHeader = header.addHeaderElement(new QName("https://svn.some.schema/logging.xsd", "LoggingHeader", "NS1"));
  //SoapElement businessId = loggingHeader.addAttribute(new QName(), "");

I don't know how the lines following the above would be like. 我不知道上面的几行会是什么样子。

I want something like 我想要类似的东西

<soap:Header>
    <NS1:LoggingHeader xmlns:NS1="https://svn.some.schema/logging.xsd">
        <NS1:BusinessId>ABCDEGED</NS1:BusinessId>
    </NS1:LoggingHeader>
</soap:Header>

Found this in this link 在此链接中找到了这个

you can actually cast the message to a SOAPMessage which gives you full access to all the SAAJ apis. 您实际上可以将消息转换为SOAPMessage,从而可以完全访问所有SAAJ API。 From there you can build whatever elements you want inside the header. 从那里,您可以构建标题中想要的任何元素。

So after type casting you should be able to use something like this 因此,在进行类型转换后,您应该可以使用类似这样的内容

SaajSoapMessage soapMessage = (SaajSoapMessage) message;
SoapHeaderElement messageId =  soapMessage.getSoapHeader().addHeaderElement(new QName("https://svn.some.schema/logging.xsd", "LoggingHeader", "NS1"));
messageId.setText("NS1:abcdef1234");

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM