1, 什么是 Web 服务?
Web 是使应用程序可以以与平台和编程语言无关的方式进行相互通信的一项技术。Web 服务是一个软件接口,它描述了一组可以在网络上通过标准化的 XML 消息传递访问的操作。它使用基于 XML 语言的协议来描述要执行的操作或者要与另一个 Web 服务交换的数据。一组以这种方式交互的 Web 服务在面向服务的体系结构(Service-Oriented Architecture,SOA)中定义了特殊的 Web 服务应用程序。
2, 什么是SOAP?
SOAP(Simple Object Access Protocol )简单对象访问协议是在分散或分布式的环境中交换信息并执行远程过程调用的轻量级协议,是一个基于XML的协议。使用SOAP,不用考虑任何特定的传输协议(最常用的还是HTTP协议),可以允许任何类型的对象或代码,在任何平台上,以任何一种语言相互通信。
SOAP包括四个部分:SOAP封装(envelop),封装定义了一个描述消息中的内容是什么,是谁发送的,谁应当接受并处理它以及如何处理它们的框架;SOAP编码规则(encoding rules),用于表示应用程序需要使用的数据类型的实例;SOAP RPC表示(RPC representation),表示远程过程调用和应答的协定;SOAP绑定(binding),使用底层协议交换信息。
应用中比较关注的是envelop,由一个或多个Header和一个Body组成。
3, 什么是Axis?
Axis本质上就是一个SOAP引擎(Apache Axis is an implementation of the SOAP),提供创建服务器端、客户端和网关SOAP操作的基本框架。但Axis并不完全是一个SOAP引擎,它还包括:
是一个独立的SOAP服务器。
是一个嵌入Servlet引擎(例如Tomcat)的服务器。
支持WSDL。
提供转化WSDL为Java类的工具。
提供例子程序。
提供TCP/IP数据包监视工具。
4, Axis相比Soap v2的优点:
Axis是第三代Apache SOAP的实现,从2000年起,SOAP v2开发小组开始讨论如何让Axis更加灵活、可配置,以及能够处理SOAP和来自W3C的各种XML标准。通过不断地讨论和代码编写,Axis目前相比SOAP V2取得了如下成果:
速度提高。 Axis通过基于事件的SAX对XML文档进行处理,从而在速度和效率上比Apache SOAP有所提高。
灵活性提高。
稳定性提高。
提供面向组件的部署。
提供一个简洁的传输抽象框架。其核心引擎完全于传输方式独立。从而使基于何种协议传输的选择更加灵活。
支持WSDL。包括WSDL和客户端代码生成等。
5, 什么是WSDL?
WSDL(Web Service Description Language)Web服务器描述语言是用XML文档来描述Web服务的标准,是Web服务的接口定义语言,由Ariba、Intel、IBM、MS等共同提出,通过WSDL,可描述Web服务的三个基本属性:
·服务做些什么——服务所提供的操作(方法)
·如何访问服务——和服务交互的数据格式以及必要协议
·服务位于何处——协议相关的地址,如URL
WSDL文档以端口集合的形式来描述Web服务,WSDL 服务描述包含对一组操作和消息的一个抽象定义,绑定到这些操作和消息的一个具体协议,和这个绑定的一个网络端点规范。
6, 什么是WSDD?
WSDD就是WEB服务分布描述(Web Service Deployment Descriptor), 它定义了WEB服务的接口,如服务名、提供的方法、方法的参数等信息。
7, 什么是UDDI?
UDDI就是统一描述、发现和集成(Universal Description, Discovery, and Integration)。UDDI用于集中存放和查找WSDL描述文件,起着目录服务器的作用。
Web 服务中的角色、操作和构件:
服务提供者。从企业的角度看,这是服务的所有者。从体系结构的角度看,这是托管访问服务的平台。
服务请求者。从企业的角度看,这是要求满足特定功能的企业。从体系结构的角度看,这是寻找并调用服务,或启动与服务的交互的应用程序。服务请求者角色可以由浏览器来担当,由人或无用户界面的程序(例如,另外一个 Web 服务)来控制它。
服务注册中心。这是可搜索的服务描述注册中心,服务提供者在此发布他们的服务描述。在静态绑定开发或动态绑定执行期间,服务请求者查找服务并获得服务的绑定信息(在服务描述中)。对于静态绑定的服务请求者,服务注册中心是体系结构中的可选角色,因为服务提供者可以把描述直接发送给服务请求者。同样,服务请求者可以从服务注册中心以外的其它来源得到服务描述,例如本地文件、FTP 站点、Web 站点、广告和服务发现(Advertisement and Discovery of Services,ADS)或发现 Web 服务(Discovery of Web Services,DISCO)。
8, AXIS的几种服务类型:
AXIS有四种service styles,分别是:RPC, Document, Wrapped, 和Message。最常用的就是RPC和Message。
RPC:在AXIS中是一个默认选项。当你部署的时候使用下列两种方式: 或则 ,它遵循SOAP RPC和编码规则。每个RPC都包括一个表示名称的外部接点和一些表示参数的内部接点。AXIS会根据规则将一个XML(WSDL文件)文件转化成一个JAVA对象,并对对想赋上在文件中描述的值。也可以根据规则将一个JAVA对象转化成XML文件。
Document
适合于老的XML schema。
Wrapped
和DOCUMENT一样,适合于老的XML schema。
在大多书情况下,你不许要担心是DOCUMENT服务还是WRAPPED服务。
Message
以这种方式部署的话,会使AXIS失去意义,它使你的代码真正的用XML形式,而不需要转化成JAVA对象。以这种方式部署的有以下四种服务方法:
public Element [] method(Element [] bodies);
public SOAPBodyElement [] method (SOAPBodyElement [] bodies);
public Document method(Document body);
public void method(SOAPEnvelope req, SOAPEnvelope resp);
几种服务类型的主要区别:
基于RPC(远程过程调用)方式,这也是Web服务最常用的方式。面向消息/文档的的类型跟RPC不同的是它提供了一个更底层的抽象,要求更多的编程工作。客户端可以传入任何的XML文档,得到的响应不一定是SOAPEnvelope,可以返回任何它所需要的东西,甚至不返回。虽然这对开发者来说非常的灵活,但是这种通讯类型在实际的应用中并不常见。面向消息/文档的Web服务主要适合于下面几种情况,比如批量处理,基于表单的数据导入,有需要返回非XML数据时,Web服务器实现中要求直接访问传输层等等
9、java类与wsdl相互生成工具:
Axis提供了”WSDL2Java”工具,可以利用wsdl描述来产生服务的Java代理和框架(proxy and skeletons)。
Axis提供了”Java2WSDL”工具,可以由java类生成wsdl文件。
相关推荐
首先,让我们了解什么是wsdd文件。wsdd是Axis用来配置和部署Web服务的XML配置文件,它包含了关于服务端点、消息处理器、消息格式等关键信息。通过编辑这个文件,开发者可以精确控制Web服务的行为和特性。 1. **Axis...
当我们需要在Spring Boot项目中集成旧版的 Axis1.4 来发布Web服务时,这通常涉及到对传统SOAP(简单对象访问协议)服务的支持。以下将详细讲解如何在Spring Boot应用中集成Axis1.4以及使用wsdd文件发布Web服务。 ...
Spring Boot以其简化配置和快速开发能力而受到广泛欢迎,而Axis1.4是Apache软件基金会的一个开源项目,主要用于生成和消费SOAP Web服务。当我们需要在Spring Boot应用程序中集成Web服务时,Axis1.4提供了一个强大的...
3. **生成WSDD文件**:Web Service Deployment Descriptor (WSDD)是Axis用来配置和部署Web服务的XML文件。你可以使用Axis的`wsdl2java`工具,从服务接口生成对应的WSDD文件。WSDD文件包含了服务的端点地址、绑定信息...
3. **WSDD(Web Service Deployment Descriptor)**: 这是Axis特有的配置文件,类似于Java的web.xml,用于配置Web服务的行为、端点、消息处理器等。WSDD文件可以控制服务的部署和客户端的生成。 4. **Axis开发指南*...
Web服务Axis 1.6是Apache软件基金会开发的一个开源工具,专门用于构建和部署Web服务。它是基于Java的,能够使开发者轻松地将现有业务逻辑转换为Web服务,或者消费其他发布的Web服务。在本文中,我们将深入探讨Axis ...
`Axis`是一个开源的Web服务引擎,它实现了Java的SOAP栈,允许开发者轻松地创建和部署Web服务。在本例中,`axis.jar`是Axis的主要库文件,包含了处理Web服务请求和响应的核心功能。 `log4j-1.2.8.jar`是Apache Log4j...
在web.xml中,你会看到类似`<wsdd:`的标签,它们定义了服务的元数据。服务类通常继承自Axis提供的基类,如`org.apache.axis.server.AxisServlet`,并实现业务逻辑。 在客户端,你可能会看到如何使用Axis生成的...
而Axis1.4是Apache软件基金会的一个开源项目,它提供了一个SOAP(简单对象访问协议)Web服务框架,用于创建和部署Web服务。 当我们需要在Spring Boot项目中集成Axis1.4来实现Web服务时,我们需要了解以下几个关键...
WSDD(Web Service Deployment Descriptor)是Axis使用的配置文件,用于描述Web服务的部署信息,如服务端点、传输协议、消息格式等。在Axis1.4中,可以通过`wsdd2java`工具,根据Java类自动生成对应的WSDD文件。这...
Apache Axis 是一个开源的Web服务开发工具,它允许开发者创建和部署SOAP(简单对象访问协议)服务。SOAP是一种用于在Web上传输结构化信息的协议,通常与Web服务结合使用。Tomcat则是一个流行的Java Servlet容器,常...
Axis是Java平台上流行的Web服务实现,它提供了SOAP(Simple Object Access Protocol)处理和WSDL(Web Services Description Language)生成的能力。通过Axis,开发者可以轻松地将Java类转换为Web服务,或者调用...
在本文中,我们将深入探讨如何使用Apache Axis1.3框架构建自定义的SOAP(Simple Object Access Protocol)应用程序。SOAP是一种基于XML的协议,用于在Web服务中交换结构化信息。Apache Axis是Apache软件基金会开发的...
Axis包括 Axis Server(用于托管Web服务)、Axis Client(用于调用Web服务)和Axis2(其下一代版本,提供更多的功能和性能改进)。 3. 创建Web Service 使用Axis创建Web服务涉及以下步骤: - 编写Java服务接口和...
通过深入研究和实践这个 WeberServiceDemo-Axis1 包中的项目,你将能更深入地理解Web服务的工作原理,包括JWS和wsdd的使用,以及如何使用Axis1框架来创建和调用Web服务。这将为你的IT职业生涯提供宝贵的Web服务开发...
其中,`server-config.wsdd`文件就是Apache Axis(一个开源的Web服务框架)中的核心配置文件,专门用于管理Web服务的部署和服务端的配置。本文将详尽解析`server-config.wsdd`的内涵及其重要性,旨在帮助读者深入...
AXIS允许开发者将现有的Java类转化为符合SOAP(简单对象访问协议)标准的Web服务,极大地简化了服务的创建和消费过程。 1. AXIS基础概念: - Web服务:Web服务是一种通过互联网进行通信的应用程序,它使用开放标准...
标题“Axis发布Web服务器”指的是Apache Axis,一个用于构建Web服务和SOAP客户端的开源Java框架。Axis的主要功能是将Java类转换为Web服务,反之亦然,使得开发人员能够轻松地在分布式环境中交换数据和执行远程操作。...
Axis1是Apache组织提供的一款开源工具,主要用于实现基于SOAP(Simple Object Access Protocol)的Web服务。本篇文章将深入探讨如何使用Axis1来创建并运行一个基本的"Hello, World!"示例,帮助初学者理解Web服务的...
Apache Axis 1.4 Final 是一个历史悠久且广泛使用的SOAP(Simple Object Access Protocol)Web服务框架,主要用于构建和部署Web服务。这个版本是Axis 1.x系列的一个稳定版本,发布于2009年,旨在提供可靠的SOAP通信...