从WSDL生成RESTful代理

3
假设我已经拥有一些Web服务的WSDL文件,但由于我将创建一个JavaScript客户端,因此我真正需要的是RESTful服务。是否有任何工具可以创建RESTful服务,并作为传统Web服务的代理?
无论使用什么语言,PHP、Java等等,都可以。
谢谢。

1
我不知道是否有这样的工具,但我想说,这可能不存在,因为从通用WSDL到REST服务的转换并不是一种清晰的映射。WSDL非常通用,包括像SOAP这样的东西,它们(除了宗教战争)更具表现力。也就是说,可能有一部分WSDL可以映射到REST,并且可以使用WSDL编写一个符合RESTful规范的Web服务。 - dfb
但是,但是,但是....我只想按一个按钮,然后就完成了!是的,我对WSDL格式不太熟悉,所以很可能是这种情况。 - Steve
你可以从JavaScript访问SOAP服务以及RESTful服务,不是吗? - Stan Kurilin
@Stas - 当然可以,但我认为OP正在寻找某种代码生成工具,该工具将代理(作为设计模式或服务器)请求到服务,并通过旧的基于WSDL的接口转发等效的REST接口。 - dfb
@Stas - 你说得对。我总是通过RESTful服务消费,所以我不熟悉JS-SOAP通信。然而,我非常怀疑它在客户端方面是否像直观、简单。我需要深入了解一下。 - Steve
显示剩余2条评论
2个回答

0

我不知道有没有现成的解决方案可以满足这个需求。

但是,你可以自己动手做一些东西。

使用 WSDL 2.0 可以定义一个基于 REST 的 Web 服务。定义 REST 服务的示例 WSDL

使用 WodenW3C WSDL 转换器 - 您可以将 WSDL 1.1 文档转换为 WSDL 2.0。

然而,即使完成了所有这些工作,您仍需要一个转换器(一种 ESB 模式)来将这些 REST 调用转换为基于 SOAP 的调用。

我的建议是 - 理想的解决方案应该涉及编写中间件逻辑(可能在 ESB 上)- 将服务公开为基于 REST 的服务,同时提供者仍然是传统的。


0

我同意Nishant的观点,ESB可以胜任这项工作。例如,你可以看看Mule这里有一个可能会引起你兴趣的论坛讨论。


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