Я пытаюсь построить тело SOAP с использованием метода addChildElement над объектом SOAP Element, но я не понимаю, как я могу создать дочерний элемент, такой как
<recipient-collection xtkschema="nms:recipient">
Я понимаю, что метод addChildElement поддерживает 3 параметракак комбинация - строка, префикс, URI.Но это не решает мою проблему.
Я пытаюсь вызвать службу SOAP с использованием пакета javax.xml.soap, и ниже приведен код, который у меня есть для создания тела SOAP.
SOAPBody soapBody = envelope.getBody();
SOAPElement soapBodyElem = soapBody.addChildElement("WriteCollection", myNamespace);
SOAPElement soapBodyElem1 = soapBodyElem.addChildElement("sessiontoken", myNamespace);
soapBodyElem1.addTextNode("abc/abc");
SOAPElement soapBodyElem2 = soapBodyElem.addChildElement("domDoc", myNamespace);
SOAPElement soapBodyElem21 = soapBodyElem2.addChildElement("recipient-collection");
SOAPElement soapBodyElem211 = soapBodyElem21.addChildElement("recipient");
soapBodyElem211.addTextNode("abc@mail.com");
SOAPElement soapBodyElem212 = soapBodyElem21.addChildElement("recipient");
soapBodyElem212.addTextNode("xyz@mail.com");
Ниже приведено ожидаемое тело SOAP, я столкнулся с проблемой создания тега «коллекция получателей» в качестве элемента SOAP.
<soapenv:Body>
<urn:WriteCollection>
<urn:sessiontoken>abc/abc</urn:sessiontoken>
<urn:domDoc>
<recipient-collection xtkschema="nms:recipient">
<recipient>abc@mail.com</recipient>
<recipient>xyz@mail.com</recipient>
</recipient-collection>
</urn:domDoc>
</urn:WriteCollection>
</soapenv:Body>