web service 体系结构

 

服务处理层次: 这层次通常包括多个Web服务。比如,服务发现属于此层次,因为它允许我们在一系列的web服务当中去定位一个特定的服务。

服务描述层次: Web服务的一大特性就是他们是自描述的。这个意思就是,一旦你定位了一个Web服务,你可以要求它“描述”自己,并且提供它所支持的能够让你去调用的接口。这个目的的达到是通过WSDL。
服务调用: 调用一个web服务(通常可能是某种分布式的服务:比如CORBA对象,或者是EJB)。SOAP描述了我们应当如何去构造请求消息,以及服务器如何去响应消息。 从理论上说,我们可以使用其他的服务调用语言(比如XML-RPC,甚至是一些特定的(ad-hoc)XML语言).然而,SOAP是Web服务调用当中最流行的选择。
传输层: 最终而言,所有这些消息都将在服务器和客户端之间传递。在此层次的协议通常是HTTP,HTTP协议是我们通常用于浏览网页所使用的协议。当然, 我们也可以选择其他的传输层次的协议,但是HTTP协议是我们最常用的协议。 
(1)不管何时客户端应用程序想要调用web服务,它都将调用客户端存根。客户端存根将会这个“本地调用”转化为一个SOAP请求。此过程将要通过一个被我们称作为“序列化”( marshaling or serializing )的过程。
(2)SOAP请求通过HTTP协议在网络上进行传输。服务端收到请求的时候,将把这个请求递交给服务端存根。服务端存根将此SOAP请求转化为服务实现能够理解的形式(此处我们通常称作为反序列化 unmarshaling or deserializing)
(3)一旦服务请求被反序列化成功,服务存根将调用服务的实现,完成调用具体的服务。
(4)请求结果最终被提交给服务存根,它能够将结果包装为一个服务响应。
(5)SOAP响应重新使用HTTP协议通过网络传回。客户存根收到了SOAP响应,并将它转化为客户端应用程序能够理解的形式。
(6)应用程序最终收到Web服务调用的结果,并且会在应用逻辑当中使用它。

你可能感兴趣的:(java,reference)