RPC与Document绑定样式的权衡选择

JWS支持RPC绑定样式也支持Document绑定样式,同时Document绑定样式为默认值。在这两种绑定样式中,依照Web服务基本概要(WS-I Basic Profile)的基本要求,这两种绑定样式只可以采用literal编码方式。在服务绑定样式上究竟选择RPC还是Document一直都是争论的话题。不管怎样,Document绑定样式,尤其是包装情况下,正在很快地被人们所认可。因此接下来简要地探讨这两种绑定样式选择上的权衡。

下面是RPC样式的一些优点

  • 由于已经有了类型定义,自动生成的WSDL文档非常精简。

  • WSDL文档中的消息可以直接反映出对应的基础web服务操作的名称,也就是在基于java语言的web服务中@WebMethod所注解的方法。因此从WSDL文档中人们可以直接获取服务操作的名称。

  • 由于不需要承载更多类型及编码信息,消息的传输往往是高效的。

下面是RPC样式的一些缺点

  • 由于WSDL中没有类型定义部分,因此不能够提供XSD文档来校验SOAP消息体。

  • 同样由于没有XSD来定义数据类型,服务能够使用的数据类型有限。因此服务只是局限于一些相对简单的类型,比如整数、字符串、日期、数组等。

  • 以此样式实现的java服务可能在其他语言平台下无法使用,这样也就违背了web服务的互用性原则。同样也就不会有来自web服务社区和WS-I小组的长期支持了。

下面是Document样式的一些优点

  • 可以利用WSDL文档类型部分的XSD文档直接来验证SOAP消息体。

  • XML模式语言除了支持整数、字符串及日期等这些简单数据类型之外,还支持任意复杂的类型,因此这种样式的web服务所使用的数据类型不受限制。

  • 只要在XSD中定义了明确的数据结构,如何构建SOAP消息体具有很大的灵活性。

  • 包装行为吸取了RPC样式的一个重要优点,即RPC样式中SOAP消息体可以直接通过与之关联的服务操作名称来命名,同时又摒弃了RPC样式的不足之处。

 下面是Document样式的不足之处

  • 在非包装版本中,SOAP消息中没有提供服务操作的名称,一些特定的程序代码在分发消息时可能会变得复杂。

  • 包装版本使得服务调用的复杂度有所增加,尤其是在API级别。

转载于:https://my.oschina.net/fhd/blog/220630

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值