在REST服务中调用SOAP服务

4
我想使用Restlet框架编写REST服务,该服务包装了一个第三方SOAP服务和一些XML数据。因此,每当我使用某些XML数据调用REST服务时,该REST服务内部会使用我提供的XML数据调用第三方SOAP服务,并且响应从第三方SOAP API到达REST API,然后再由REST API传递给我。
我已经阅读了以下问题: 使用REST服务调用SOAP服务 在Jersey中调用SOAP 但这并没有对我帮助很大,所以如果有人能够提供链接或教程以获取任何帮助,那将是非常好的。谢谢。

1
如果您熟悉以下步骤,则可以按此进行操作:
  1. 创建RestAPI
  2. 在Rest API中创建SOAP客户端
  3. 读取SOAP响应并解析,根据需要使用响应。 编写代码并让我们知道如果您有任何问题。
- thar45
1
我非常了解这些步骤,但我想知道整体的解决方案。我该如何在REST API中创建一个带有一些XML数据的SOAP客户端? - Shivam
1个回答

3

如果您想手工实现,我认为以下链接可能会对您有所帮助:

这里的关键挑战是将请求元素转换为SOAP请求,因为SOAP仅使用HTTP作为传输协议(头部和负载均如此),响应也是如此(提取头部和负载以构建REST响应)。使用Restlet,您需要利用其REST API。请参阅此链接:http://restlet.com/technical-resources/restlet-framework/guide/2.3/core/http-headers-mapping

我还看到了这些工具,它们似乎提供了一个代理来将SOAP服务适配为REST服务:

希望能对您有所帮助, Thierry


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接