如何将SOAP模板加载到Java中的SOAP消息中?

问题描述:

我正在做一些Web服务测试工作,因此必须使用Java创建SOAP请求。为了自动化SOAP消息的某些部分,只需要更改几个字段,其余部分保持静态。所以我想创建一个SOAP模板,并将其加载到Java。如何将SOAP模板加载到Java中的SOAP消息中?

虽然,我无法弄清楚如何将该文件直接加载到Java中的Message对象。

,我指的主要来源: 在SAAJ code example

假设TEMPLATE.XML包含您请求数据,你可以通过这种方式:

SOAPPart soapPart = message.getSOAPPart(); 
DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance(); 
DocumentBuilder builder = dbFactory.newDocumentBuilder(); 
Document document = builder.parse("file:///template.xml"); 
DOMSource domSource = new DOMSource(document); 
soapPart.setContent(domSource); 

如果你不使用SAAJ要求,如果你使用的JAX-WS公用事业你的生活会更容易从WSDL为您生成代理对象。然后你可以调用你对这些对象的请求,就像它们是本地方法一样。如果您对此感兴趣,请点击这里快速tutorial

Request.java部分与SoapWS库试试,这是更容易使用这个库,以测试SOAP服务: