用于SOAP的WSDL和基于JSON的REST和REST的WSDL

ace*_*ace 7 java rest soap wsdl web-services

当公司想要发布Web服务时,是否为SOAP发布单独的WSDL并为基于REST的Web服务单独发布,或者它们是否在同一个WSDL中合并?WSDL只能代表基于JSON(而不是XML)的REST Web服务吗?

假设Web服务客户端是基于Java的.

如果SOAP和REST在同一个WSDL中合并,那么wsimport是否为SOAP生成单独的类(用于绑定XML到Java对象),并为REST分开?

Lad*_*nka 7

您需要WSDL 2.0(或WADL)来描述REST服务.目前对WSDL 2.0的支持非常有限,wsimport不支持它.我不是Java开发人员,但我认为wsimport仅适用于SOAP服务(JAX-WS,它也不支持WSDL 2.0).

编辑:

检查此扩展程序.它应该允许您使用JSON编码公开JAX-WS服务.它还应该公开"JavaScript代理"来调用JSON服务.为了更准确地回答您的问题 - 我认为您不能在没有WSDL 2.0或WADL的情况下描述REST服务.因此,您无法将SOAP和REST服务合并到大多数堆栈支持的单个WSDL 1.1.有关描述JSON服务的进一步参考,请检查此问题.