Web服务具有以下特殊行为特征 :
基于XML
Web服务在数据表示和数据传输层使用XML.使用XML可以消除任何网络,操作系统或平台绑定.基于Web服务的应用程序在其核心级别具有高度可互操作性.
松散耦合
Web服务的使用者不直接与该Web服务绑定. Web服务接口可以随时间发生变化,而不会影响客户端与服务交互的能力.紧密耦合的系统意味着客户端和服务器逻辑彼此紧密相关,这意味着如果一个接口发生变化,另一个接口必须更新.采用松耦合架构往往使软件系统更易于管理,并允许在不同系统之间进行更简单的集成.
粗粒度
面向对象技术因为Java通过各种方法公开他们的服务.单个方法操作太精细,无法在公司级别提供任何有用的功能.从头开始构建Java程序需要创建几个细粒度的方法,然后将这些方法组合成客户端或其他服务所使用的粗粒度服务.
企业和它们暴露的接口应该是粗粒度的. Web服务技术提供了一种定义粗粒度服务的自然方式,可以访问适当数量的业务逻辑.
能够同步或异步
同步性是指客户端与服务执行的绑定.在同步调用中,客户端在继续之前阻止并等待服务完成其操作.异步操作允许客户端调用服务然后执行其他功能.
异步客户端稍后检索其结果,而同步客户端在服务完成时接收结果.异步功能是启用松散耦合系统的关键因素.
支持远程过程调用(RPC)
Web服务允许客户端调用过程,函数和使用基于XML的协议的远程对象上的方法.远程过程公开Web服务必须支持的输入和输出参数.
通过Enterprise JavaBeans(EJB)和.NET组件开发组件越来越多地成为过去的体系结构和企业部署的一部分许多年.这两种技术都是通过各种RPC机制分发和访问的.
Web服务通过提供自己的服务(相当于传统组件的服务)或将传入的调用转换为RPC来支持RPC.调用EJB或.NET组件.
支持文档交换
XML的一个主要优点是它的通用方式不代表只有数据,还有复杂的文件.这些文档可以像表示当前地址一样简单,也可以像表示整本书或报价请求(RFQ)一样复杂. Web服务支持透明的文档交换,以促进业务集成.