我有一个带有 SOAP 请求的 XML 文件,其中包含大约 150 多个句子,我想通过 javax.xml.soap
API 在我的 JavaProject 中发送此 SOAP 请求。因此,通常您可以使用以下过程构建 SOAP 请求:
SOAPBody soapBody = envelope.getBody();
SOAPElement soapServiceElem = soapBody.addChildElement("SomeRandomServiceName", "int");
SOAPElement soapInputMetaDataElem = soapServiceElem.addChildElement("inputMetaData");
SOAPElement soapVersionElem = soapInputMetaDataElem.addChildElement("version");
SOAPElement soapVersionText = soapVersionElem.addTextNode("V_1");
...
等等..但是如果我想构建更大的 SOAP 请求,这似乎有点太多了。是否有另一种“更好”的方法来构建 SOAP 请求?是否可以选择将 XML 文件作为 String
并将其解析为 SOAPMessage
?是否有类似内置函数的东西可以将 String
解析为 SOAPMessage
或者我必须编写自己的函数?
或者甚至更好:是否可以将请求 XML 文件放在我的项目目录中,然后将其作为 SOAP 请求发送?如果是这样,怎么办?
最佳答案
假设您的请求位于 request.xml
中。您可以执行以下操作:
org.w3c.Document document = //read dom from request.xml
soapBody.addDocument(document);
有关更多详细信息,请参阅SoapBody#addDocument(Document)
关于java - 通过将 XML 文件解析为 SOAPMessage,使用 javax.xml.soap API 构建更大的 SOAP 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31693750/