WebService简介
WebService使用基于XML的消息处理,作为基本的数据通讯方式,消除使用不同组件模型、操作系统和编程语言之间存在的差异,使异构系统能作为单个计算机网络协同运行。WebService建立在一些通用协议的基础上,如HTTP,SOAP,XML,WSDL,UDDI等。这些协议在涉及到操作系统、对象模型和编程语言时,没有任何倾向,因此具备很强的生命力。
WebService的特点
封装性:WebService是一种部署在Web应用上的对象,具备良好的封装性。对使用者而言,仅能看到服务描述,而该服务的具体实现、运行平台都是透明,调用者无须关心,也无法关心。WebService作为整体提供服务。
松散耦合:当WebService的实现发生改变时,调用者是无法感受到这种改变的。对调用者而言,只要服务实现的接口没有变化,具体实现的改变是完全透明的。
使用标准协议:WebService所有的公共协议都使用标准协议描述、传输和交换。这些标准协议在各种平台上完全相同。
高度整合的能力:由于WebService采用简单的、易理解的标准Web协议作为通信协议,完全屏蔽了不同平台的差异,无论是CORBA、DCOM还是EJB,都可以通过这种标准的协议进行互操作,实现系统的最高可整合性。
高度的开放性:WebService可以与其他的WebService进行交互,具有语言和平台无关性,支持CORBA,EJB,DCOM等多种组件标准,支持各种通讯协议如:HTTP,SMTP,FTP和RMI等。
WebService的主要技术
SOAP(Simple Object Access Protocol 简单对象访问协议)是WebService的根本。它是一种具有扩展性的XML消息协议。SOAP允许一个应用程序向另一个应用程序发送XML消息,SOAP消息是从SOAP发送者传至SOAP接收者的单路消息,任何应用程序均可作为发送者或接收者。SOAP仅定义消息结构和消息处理的协议,与底层的传输协议独立。因此,SOAP协议能通过HTTP,JMS或SMTP协议传输。目前,大多采用HTTP传输SOAP消息。SOAP包括如下三个部分:
SOAP封装结构:该结构定义消息的整体框架,确定消息中的内容,内容的处理者,内容哪些部分是可选的,哪些部分是必需的。
SOAP编码规则:定义应用程序程序之间数据交换机制。
SOAP RPC表示:定义远程过程调用的应答的协议。
在SAOP封装、SOAP编码规则和SOAP RPC协议之外,该规范还定义了两个协议绑定,分别确定在有HTTP扩展框架、无HTTP扩展框架的情况下,如何在HTTP消息中传输SOAP消息。
WSDL(WebService描述语言)
WSDL(WebService Description Language WebService描述语言)使用XML描述WebService,包括访问和使用WebService所必需的信息,定义该WebService的位置、功能以及如何通信等描述信息。WSDL文件包含如下三个部分:
WHAT部分:包括类型(types)、消息(messages)、portType元素,它们定义了 客户端及服务器端交互的消息及数据类型。
HOW部分:包括binding元素,用于描述WebService的实现细节。binding元素将portType绑定到一种特定的协议。
WHERE部分:包括Service元素,它将端口类型元素,binding元素以及WebService实际的地址放在一起,可在WSDL文件的最后部分看到Service元素。
UDDI(统一描述、发现和整合协议)
UDDI(Universal Description,Description and Integration统一描述、发现和整合协议)是一套信息注册规范,它具有如下特点:
基于Web。
分布式。
====================以上资料网上CV过来的主要方便自己随时快捷查看===========================
1.安装AXIS。
http://www.apache.org/dyn/closer.cgi/ws/axis/1_4
1. docs:存放Axis的说明文档。
2. lib:存放Axis的二进制发布包。
3. samples:存放利用Axis发布WebService的示例代码。
4.webapps:存放安装Axis的基础应用。
5. xmls:存放相关配置文档。
6.还有LICENSE等相关说明文档。
安装Axis,首先必须保证系统已经正确安装了Web服务器,Tomcat的webapps路径下。然后打开浏览器,输入:http://localhost:8080/axis/。
依次下载如下三个压缩文件:
1.jaf-1_1-fr.zip
2.javamail-1_4.zip
3. xml-security-bin-1_2_1.zip
成功页面
将这三个压缩文件解压缩。将jaf-1_1-fr.zip压缩包中的activation.jar文件,复制到axis应用的WEB-INF\lib下;将javamail-1_4.zip压缩包中的mail.jar文件,复制到axis应用的WEB-INF/lib下;再将xml-security-bin-1_2_1.zip的lib下xmlsec-1.2.1.jar和xalan.jar文件,复制到WEB-INF/lib下。
首先写个简单的类
写好后将这个类放到,tomcat6.0/webapps/axis/下将他的.java后缀名改为.jws
然后编写访问这个类
public class Helloservice {
public String returnString(String name){
return "欢迎"+name+"学习WebService!";
}
}
再次之前需要到如以下几个包
package web.service;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
public class WebServiceTest {
/**
* @param args
*/
public static void main(String[] args) {
System.out.println("开始调用WebService");
try {
//WebService所在的url
String endpoint = "http://localhost:8080/axis/Helloservice.jws";
//创建Serivce对象,Service对用用于创建Call对象
Service service = new Service();
//创建Call对象,Call对象用于调用服务
Call call = (Call)service.createCall();
//为Call对象设置WebService的url
call.setTargetEndpointAddress(new java.net.URL(endpoint));
//为Call对象设置调用的方法名
call.setOperationName("returnString");
//调用WebService的方法,并获得返回值
String s = (String)call.invoke(new Object[] {"超人"});
//输出返回值
System.out.println("返回值为:"+s);
} catch (Exception e) {
e.printStackTrace();
System.out.println("调用出现问题");
}
}
}
最后运行下:
- 大小: 107.2 KB
- 大小: 189.7 KB
- 大小: 5 KB
- 大小: 11.9 KB
- 大小: 12.4 KB
- 大小: 7.9 KB
分享到:
相关推荐
根据提供的文件信息,本文将详细解释一个简单的 WebService 示例,并深入探讨其中的关键概念和技术细节。 ### 一、WebService 概念 #### 1.1 WebService 定义 WebService 是一种支持通过网络进行调用的服务形式,...
【标题】"超简单的webservice调用"涉及的是在Java环境下使用Hutool库进行Web Service接口调用的基础知识。Web Service是一种基于网络的、松散耦合的软件组件交互方式,它允许不同系统间的应用共享数据和服务。在这个...
在学习WebService的过程中,你可能会遇到一些关键概念,例如SOAP绑定、端点地址(Endpoint)、服务代理(Proxy Class)等。SOAP绑定定义了如何使用SOAP消息与服务通信,端点地址是服务的实际位置,而服务代理是...
【Eclipse下WebService学习】 在IT领域,WebService是一种基于开放标准的、允许不同系统之间进行交互的技术。在Eclipse这个流行的Java集成开发环境中,开发者可以方便地创建、部署和测试WebService。本文档主要介绍...
在本案例“webservice简单实现例子java工程”中,我们将探讨如何使用Java来实现一个简单的Web服务。 1. **XML**: XML是Web服务数据交换的主要格式,用于结构化和存储数据。在Web服务中,XML被用来定义消息的结构和...
在本“简单的WebService案例”中,我们将深入理解WebService的基本概念、工作原理以及如何实现一个基本的WebService应用。 1. WebService定义: WebService是一种通过标准协议(如SOAP - Simple Object Access ...
"利用CXF实现简单的WebService"这个文件名可能包含了一个实际的示例项目,下载后可以作为学习和调试的参考,进一步巩固所学知识。记得实践是检验真理的唯一标准,动手操作才能更好地理解和掌握技术。
这个资源中的源码应该包含了上述部分或全部步骤的实现,通过学习和研究这些代码,你将能够掌握在WinForm应用中创建和使用WebService的基本技能。对于初学者来说,这是一个很好的实践项目,可以帮助加深对.NET Web...
WebService是一种基于XML(Extensible Markup ...总之,这个“WebService最简单搭建Demo”是学习WebService技术的良好起点,它涵盖了从基础理论到实际操作的整个流程,有助于初学者快速掌握这一重要的跨平台通信技术。
总之,“简单的XFire WebService例子”旨在为初学者提供一个学习和实践Web服务开发的起点。通过这个例子,你可以逐步了解Web服务的基本概念,掌握XFire的使用技巧,并在此基础上探索更复杂的Web服务应用场景。
通过这个“Delphi WebService简单实例”,你可以学习到如何在Delphi环境中创建和调试一个与WebService交互的应用,这对于理解Web服务和客户端通信机制至关重要。实践中不断探索,将使你更加熟练地掌握Delphi开发Web ...
在学习WebService的过程中,除了理论知识,实践经验同样重要。可以尝试使用Apache CXF、Java JAX-WS等工具创建自己的WebService,并通过SOAPUI等测试工具进行调用和验证。同时,阅读相关书籍、参与在线论坛讨论,...
标题 "spring+cxf编写简单的webservice接口" 涉及的是使用Spring框架和Apache CXF库来创建Web服务接口的过程。这是一个常见的技术栈,用于构建基于SOAP协议的Web服务。以下是对这一主题的详细解释: 1. **Spring...
【Eclipse下WebService学习】 在IT行业中,Web Service是一种基于开放标准(如XML、WSDL和SOAP)的互操作技术,允许不同系统间的应用程序通过网络进行通信。它提供了一种松散耦合的方式,使得软件组件可以跨越各种...
### 利用Java编写简单的WebService实例 ...总之,通过Axis2,开发者能够以最小的学习成本快速搭建出功能完备的WebService,极大地提高了开发效率和灵活性,是Java领域内进行WebService开发的优秀选择。
ASP.NET WebService是一种基于.NET Framework的Web应用程序,...在这个简单实例中,我们学习了如何创建一个接收和返回XML数据的ASP.NET WebService。通过深入理解和实践,你可以构建更复杂的服务,满足各种业务需求。
【WebService客户服务端代码详解】 在IT领域,WebService是一种基于开放标准的互联网...通过学习和实践这些代码,开发者可以快速掌握如何在Delphi中构建和使用WebService,为自己的应用程序添加跨平台的数据交换能力。
Apache Axis2是Apache SOAP栈的一个实现,提供了简单且高效的Web Service开发工具。 首先,开发者需要在Eclipse集成开发环境中搭建Axis2环境。这涉及到将Axis2的zip包解压缩,并在Eclipse的偏好设置中指定Axis2的...