如何将子元素添加到SOAP标头中。我正在使用2008/9发布的旧版Spring 1.5s。
SoapHeader header = soapMsgResponse.getSoapHeader();
SoapHeaderElement loggingHeader = header.addHeaderElement(new QName("https://svn.some.schema/logging.xsd", "LoggingHeader", "NS1"));
//SoapElement businessId = loggingHeader.addAttribute(new QName(), "");
我不知道上面的行如何会是这样的。
我想要像
这样的东西<soap:Header>
<NS1:LoggingHeader xmlns:NS1="https://svn.some.schema/logging.xsd">
<NS1:BusinessId>ABCDEGED</NS1:BusinessId>
</NS1:LoggingHeader>
</soap:Header>
答案 0 :(得分:0)
在此link
中找到此信息您实际上可以将消息强制转换为给您的SOAPMessage 完全访问所有SAAJ apis。从那里你可以建造任何东西 你想要的标题内的元素。
所以在类型转换之后你应该可以使用类似的东西
SaajSoapMessage soapMessage = (SaajSoapMessage) message;
SoapHeaderElement messageId = soapMessage.getSoapHeader().addHeaderElement(new QName("https://svn.some.schema/logging.xsd", "LoggingHeader", "NS1"));
messageId.setText("NS1:abcdef1234");