Return XML 使用安全网络服务时

Return XML when consuming a secure web service

我目前正在尝试将生成的报告用作 Web 服务,以将一些数据集成到我们的系统中。由于服务本身是生成的,因此响应会随着添加内容而频繁更改。虽然端点和响应可能会更改,但请求正文将始终相同(取自 soapui):

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Body>
      <Execute_Report>
      </Execute_Report>
   </soapenv:Body>
</soapenv:Envelope>

我正在尝试找出一种方法来对任何端点(不同的报告)发出上述请求并允许更改响应。理想情况下,我只想 return 响应的原始 XML,因为如果我不受数据合同的约束,我可以更轻松地更改我处理 XML 的方式。

还值得注意的是,该服务使用 WS-Security 并且 Username/Password 作为请求的一部分传递。

我使用过 WCF,当我不希望服务频繁更改时,从 svcutil 生成的文件工作得很好。然而,因为这些 web 服务生成的变化是预期的,如果我能摆脱它,我不想在事情发生变化时使用 svcutil 重新生成一个新文件,或者必须生成一个文件(和维护)所有不同生成的网络服务。

归根结底,问题是:如何使用 Web 服务和 return 原始 XML,同时仍然能够申请WS-Security 向请求?

我一直在四处寻找并找到了这个答案:

.NET client authentication and SOAP credential headers for a CXF web service

这让我可以做我想做的事。