自从JavaEye将CXF2.0发布的消息置顶之后,我一下收到好几个朋友的来信,他们除了对CXF使用表现了极大兴趣以外,也对CXF以及JAXWS的具体实现表现出了很大的热忱。
下面是他在信中提的几个问题:
“如何才能够学好web services呢?
不仅仅是熟悉cxf这样的框架,而是真正了解和掌握,包括协议细节,传输过程,以及设计合理的web services甚至开发自己的简单webservices框架。
不知您对以上过程有什么建议呢?有没有什么推荐的学习蓝图?”
对于第一个问题,真的很难回答,我想很多人都有自己的答案。
我们先从第二个问题开始,下面是我摘抄自 SOA: Using Java Web Services 第一章中的有关服务器和客户端消息通讯流程中的相关重要步骤,希望能对大家学习 Web Services 有所帮助。
有关学习Web Services 的学习蓝图请参见我的另一篇Blog Web Services学习资源
服务端调用
1. Receiving a SOAP message from a transport
2. Invoking handlers that preprocess the message
3. Determining the message’s target service
4. Determining the Java target is referred to as dispatching
5. Deserialize the message into Java objects ( paramenters)
6. Invoking the Java target using the paramenters and getting the Java object retruned by the target method
7. Serialize the retrun object into an XML element
8. Wrapping the retruned XML element as a SOAP message response
9. Handing the SOAP response back to the transport for delivery
客户端的调用
1. Creating an instance of the Web service endpoint which is implementing the SEI (Service Endpoint Interface).
[SEI instances are implemented using Java proxies and invocation handlers]
2. Handling an invocation of the SEI instance
3. Taking the paramenters passed to the SEI and serialized them into XML elements
4. Wrapping the paramenter elements in a SOAP message
5. Invoking handlers that post-process the message
6. Handing off the message to the transport for delivery
7. Receiving the SOAP message response from the transport
8. deserialized the message into a Java object that is an instance of the class specified by the SEI's return type.
9. Completing the invocation of the SEI by retruning the deserialized SOAP response
分享到:
相关推荐
### IBM WebSphere Application Server V7.0 Web Services Guide 关键知识点概述 #### 一、引言与背景 在《IBM WebSphere Application Server V7.0 Web Services Guide》中,本书全面介绍了 WebSphere 应用服务器 ...
Chapter 1, Apache Web Services and Axis2 - Gives you an introduction to web services and the web service stack at Apache. Chapter 2, Looking inside Axis2 - Learn about Axis2 architecture and the ...
Web Services Invocation Framework (WSIF) 是一个用于调用Web服务的标准框架,它提供了一个统一的接口,以便在不同的Web服务技术之间进行通信。 #### 五、WS-* 标准 WS-*是一系列Web服务标准的统称,用于扩展SOAP...
### Web Services技術介紹 #### 一、Web Services概觀 Web Services技術,中文常被稱為網路資訊服務計算技術或簡稱為網路服務,是一項允許不同應用程式之間透過標準化的方式進行資料交換及功能共享的重要技術。在...
本文将详细介绍利用Java调用WebServices的三种常见方式,并重点解析动态调用接口(Dynamic Invocation Interface,简称DLL)这一调用方式。 #### 一、Java WebServices调用的基础规范:JSR101与JSR109 为了确保...
标题 "jersery client调用REST框架web services服务的一个示例" 描述了一种使用Jersey客户端库来访问RESTful Web服务的技术。REST(Representational State Transfer)是一种网络应用程序的设计风格和开发方式,基于...
### 使用Axis1开发Web Services入门知识点详解 #### 一、实验背景与目标 在学习如何使用Axis1开发Web Services之前,我们首先需要了解几个基本概念:Web Services是一种平台独立的服务形式,它允许不同应用程序...
Java Remote Method Invocation (RMI) 是一种用于在Java应用程序之间进行远程通信的技术。RMI允许一个对象的方法调用跨越网络,使得分布式应用的开发变得更加简单。在这个“rmi client和server完整代码”中,我们将...
### Semantic Web Services 1 – Toward Automatic Discovery and Invocation of Information-Providing Web Services #### 概述 本文探讨了语义网络技术如何使Web服务的自动发现与调用成为可能,尤其是在信息提供...
标题 "axis2 InvocationTargetException" 描述的是一个与Apache Axis2框架相关的编程问题,该问题通常在执行服务调用时出现,提示"InvocationTargetException"。这可能是由于多种原因引起的,包括但不限于错误的服务...
5. **通信协议**:在Java EE中,JMS (Java Message Service) 或者RMI (Remote Method Invocation) 可用于实现集群节点间的通信和协调。 6. **集群配置**:在Tomcat中,可以通过修改server.xml配置文件来设置集群,...
JAX-WS 2.0 是Java API for XML Web Services的第二个主要版本,它引入了异步Web服务调用的功能,以解决在Service-Oriented Architecture(SOA)环境中开发响应迅速的Web服务客户端应用程序的挑战。由于Web服务调用...
至于标签中的"client_server_delphi",这表明项目涉及到客户端和服务器的交互设计。在Delphi中,可以使用 Indy 或 Winsock 组件来处理TCP/IP协议,实现客户端与服务器的连接。Indy 是一套全面的网络组件,包括SMTP、...
`Jersey Client` 是一个强大的库,它是 `Java API for RESTful Web Services (JAX-RS)` 规范的官方实现之一,专为客户端应用程序设计,使得开发者能够方便地与RESTful Web服务进行交互。在本文中,我们将深入探讨 `...
Jersey是JAX-RS(Java API for RESTful Web Services)的参考实现,它简化了REST服务的开发。通过使用Jersey,开发者可以轻松地创建和消费RESTful服务,无需关注底层HTTP细节。此外,Jersey还支持多种扩展,如JSON...
Spring是目前非常流行的Java应用框架,其提供了丰富的开发组件,WS(Web Service)是其中重要的组成部分。Web Service是一种基于Web的分布式计算技术,它使得不同应用程序能够通过Internet通信和交互。Spring对WS的...
结合SQL Server 2000这样的关系数据库管理系统,JSP(Java Server Pages)技术可以用来开发动态交互式的WEB应用程序。 一、J2EE / EJB技术概述 J2EE是一种利用Java语言编写企业级应用程序的平台,它是基于Java 2...