今天开始,我们来一起学习一下 Axis,我们以 Axis 1.4 版本为例。
一、准备环境:
1、Eclipse:http://www.eclipse.org/downloads/ 下载较新版本的 Eclipse,里面已经自带了WebService插件。
2、Axis1.4:下载 axis-bin-1_4.zip 文件。
3、JDK 1.6:这个就不用多说了。(1.6以前的版本也可以,不过运行时会有警告。)
4、Tomcat:这个也不多说了,5.0以上版本即可。
二、安装部署Axis:
1、解圧 axis-bin-1_4.zip文件,在解压目录中找到 webapps 文件夹中的 axis 目录,拷贝到 tomcat 的 webapps 下,然后启动 Tomcat 服务器。
2、在浏览器里输入 http://localhost:8080/axis ,如果看到欢迎页面,说明部署成功:
然后点击第一个链接 Validation,检查一下是否所需要的 jar 包全部存在。如果缺少一些 jar 包,会有以下提示:
如上图有一个错误。(上图出现的错误是因为 JDK 版本的问题,Tomcat 所用的 JDK 不是 1.6 以上版本。不会影响使用,但是要知道,我们可以用 Validation 链接来校验我们的环境是否正确。)如果没有错误,那们我们的环境就没有任何问题了。我们可以来做第一个 Webservice 了。
三、写服务端代码:
Axis 中,Webservice 的发布方式有两种,一种是以 JWS (即时发布),另一种是以 WSDD(定制发布)。JWS 比较简单,但是应用较少,很多时候,我们都是以 WSDD 方法发布我们的 Webservice。但是,我们还是从 JWS 发布开发说起。
先编写服务器端的代码,代码很简单,就对传入的“人名”说一句 hello。以下是服务器端(WSServer.java)代码:
/**
* 服务器端代码,不能用包名,只能存在于 default 包下
*/
public class WSServer {
public String sayHello(String name) {
return name + ", hello!!";
}
}
写好以后, WSServer.java 文件拷贝到 Tomcat 的 webapps\axis\ 目录下,改名为 WSServer.jws 。然后重启 Tomcat 服务器。
四、编写客户端代码:
1、由于代码比较简单,我们可以直接编写客户端代码(WSClient.java):
import javax.xml.rpc.ParameterMode;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import org.apache.axis.encoding.XMLType;
public class WSClient {
public static void main(String[] args) throws Exception {
String endpoint = "http://localhost:8080" + "/axis/WSServer.jws";
Service service = new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress(new java.net.URL(endpoint));
call.setOperationName("sayHello");
call.addParameter("op1", XMLType.XSD_STRING, ParameterMode.IN);
call.setReturnType(XMLType.XSD_STRING);
String ret = (String) call.invoke(new Object[] { "World" });
System.out.println(ret);
}
}
写好后运行,得到输出结果:World, hello!!
2、利用 WSDL 文件编写客户代码:
访问 http://localhost:8080/axis/WSServer.jws
在 Click to see the WSDL 处 右键另存为,把后缀改为 .wsdl 后保存。将保存后的 .wsdl 文件拷贝到 Eclipse 的工程目录下。如图:
然后在 .wsdl 文件上,右键 ---> web serivec ---> Generate Client。如图:
然后点 finish ,生成客户端代码。这要比我们上面的代码复杂得多,也有了一些固定的结构。我们新建我们的测试代码 WSClient.java,内容如下:
import java.rmi.RemoteException;
import javax.xml.rpc.ServiceException;
import localhost.axis.WSServer_jws.WSServerServiceLocator;
public class WSClient {
public static void main(String[] args) {
WSServerServiceLocator lo = new WSServerServiceLocator();
String ret = null;
try {
ret = lo.getWSServer().sayHello("tom");
System.out.println(ret);
} catch (RemoteException e) {
// do something
} catch (ServiceException e) {
// do something
}
}
}
打印结果:tom, hello!!
如果有兴趣,可以看看生成代码的结构,把很多共用性的东西都封装了起来。这里就先不说明了。以后再具体说明。
- 大小: 83.9 KB
- 大小: 121.6 KB
- 大小: 43 KB
- 大小: 50 KB
- 大小: 80.2 KB
分享到:
相关推荐
AXIS学习及配置解析 AXIS是一个开源的Java框架,主要用于构建和部署Web服务。它在Web服务领域扮演着重要角色,特别是在Java生态系统中。AXIS允许开发者将现有的Java类转化为符合SOAP(简单对象访问协议)标准的Web...
Axis2是Apache软件基金会开发的一款基于Java的Web服务框架,它是Apache SOAP(Simple Object Access Protocol)项目的下一代产品,专门用于构建高性能、可扩展的Web服务。这个“axis2学习资料”压缩包很可能是包含了...
Axis2是Apache软件基金会开发的一款基于Java的Web服务框架,它是Apache SOAP(Simple Object Access Protocol...通过深入学习和实践,你将成为一个熟练的Axis2开发者,能够在企业级项目中游刃有余地处理Web服务的挑战。
axis学习攻略,包含插件安装,文档学习,例子(2个项目架包一样,有一个例子的架包没加,加上就超出50MB了),保证能学好!axis2-1.4.1-bin.rar--axis2-1.4.1-war.rar 官网下
在这个“axis学习资料集合”中,我们可以深入理解Axis在创建Web服务过程中的重要角色以及相关技术。 1. **Axis与Java Web服务** - **SOAP(Simple Object Access Protocol)**:是一种轻量级的消息协议,用于交换...
标题"axis学习资源,很不错的资料哦"暗示了这是一份关于AXIS学习的宝贵资料,包含了AXIS的各个关键方面,适合初学者和进阶者深入理解并掌握这一技术。 描述中提到的主要内容包括: 1. AXIS的安装:AXIS的安装流程...
【Axis2学习教程-全面学习AXIS】是一个针对Java开发者的教程,专注于教授如何使用Axis2这一流行的WebService引擎。Axis2是Apache软件基金会开发的Web服务框架,它为创建和部署Web服务提供了一种高效且灵活的方式。在...
AXIS学习笔记主要涵盖如何使用AXIS框架来开发SOAP Web服务和客户端程序。SOAP(简单对象访问协议)是一种用于交换结构化信息的标准协议,常用于Web服务交互,尤其是在企业内部系统如ERP的集成中。 首先,你需要搭建...
总结来说,学习 Axis1.4 主要涉及以下几个关键点: 1. 下载并引入 Axis1.4 相关 JAR 包到项目中。 2. 配置 `web.xml` 文件以注册 Axis 相关的 Servlet 和监听器。 3. 创建服务端 Java 类,定义 Web 服务接口。 4. ...
Axis是一个流行的开源SOAP(Simple Object Access Protocol)库,它允许开发者在Java平台上构建和部署Web服务。本篇文章将带你逐步了解如何在Tomcat服务器上安装和配置Axis,以便开始你的Web服务开发之旅。 **第一...
Axis2是Apache软件基金会开发的一款开源Web服务框架,主要用于构建高效、灵活且可扩展的Web服务。本笔记将深入探讨Axis2的核心概念、版本差异、安装配置以及在实际项目中的应用。 1. **核心概念** - **SOAP**: ...
这些文件可能包含上述提到的API参考、教程和示例代码,它们是学习和开发基于Axis或Axis2的Web服务不可或缺的资源。通过仔细阅读这些文档,开发者可以掌握如何使用Axis或Axis2来创建符合WS-I标准、高性能的Web服务,...
在这个名为"AXIS2快速学习资料"的压缩包中,包含两份宝贵的资源:一份是中文的Word文档,标题为"Axis2--Java访问Axis2接口.doc",另一份是英文的PDF,标题为"Axis2--Dev_Web_Services_With_Apache_Axis2.pdf"。...
AXIS学习笔记主要介绍了如何使用AXIS框架进行SOAP Web服务的开发和部署,适用于互联网环境。AXIS是一个开源的Java库,它允许开发者创建、部署和使用基于SOAP的Web服务。以下是AXIS学习的关键知识点: 1. **SOAP Web...
### Axis学习详细资料知识点解析 #### 一、Axis概述 Axis是Apache软件基金会下的一个开源项目,主要用于构建和调用Web服务。它提供了一种简单而有效的方式,用于实现Java和其他语言之间的通信,通过XML和SOAP协议...
【标题】:“Web服务学习之Axis2(一)” 在Web服务的世界中,Apache Axis2是Java平台上一个强大且灵活的工具,用于构建和部署Web服务。本篇将重点介绍Axis2的基础知识,以及如何开始使用它进行开发。 **1. Web...
标题中的“Axis 学习安装步骤”指的是学习和安装Axis框架的过程。Axis是Apache软件基金会开发的一个开源项目,主要用于创建Web服务和客户端。它是一个SOAP(简单对象访问协议)栈,支持WS-I基本Profile,使得开发者...
在本压缩包中,你将找到关于Axis2的学习资料,包括开发文章、插件包以及一个名为“countservice”的示例服务。 首先,让我们深入理解一下Axis2的核心概念和功能。Axis2是Web服务引擎,它负责处理SOAP消息并提供与...
**Axis学习笔记(网页转贴)** Axis是一个开源的Java库,主要用于创建和使用Web服务。它是Apache软件基金会的一部分,广泛应用于开发基于SOAP(简单对象访问协议)的Web服务。本学习笔记将深入探讨Axis在Web服务开发...