介绍AXIS的文档
Axis(Apache eXtensible Interaction System)是一款开源的WebService运行引擎,它是SOAP协议的一个实现,其本身来源于Apache的另一个项目Apache SOAP。 Axis分为1.x系列和Axis 2系列,两个系列体系结构和使用上有较大的区别,相对而言,Axis1.x更加稳定,文档也比较齐全,因此本文内容以Axis 1.x系列最新版本1.4为基础,Axis有C++和Java两个版本的实现,本文描述Java版的Axis ### AXIS 1.x系列概述与实践 #### 一、AXIS简介 Axis 是一款由 Apache 基金会维护的开源 WebService 运行引擎,它支持 SOAP 协议,是 Apache SOAP 项目的后续发展成果。Axis 可以用于创建和调用基于 SOAP 协议的 Web 服务。该工具具有高度的灵活性,并且支持多种编程语言。 **特点**: - **跨平台性**:支持 Java 和 C++。 - **开源**:基于 Apache 许可证发布。 - **稳定性**:特别是 1.x 系列,相比于 Axis 2 更加成熟稳定。 - **丰富的文档资源**:社区活跃,文档资料详尽。 #### 二、Axis 的安装配置 1. **环境准备**:确保已经安装 Java SE 5 或更高版本以及 Tomcat 5.0 或更高版本。 - 下载 `axis-bin-1_4.zip` 并解压。 - 将解压得到的 `webapps` 目录下的 `axis` 文件夹复制到 Tomcat 的 `webapps` 目录下。 - 设置环境变量: ```plaintext set AXIS_HOME=C:\Program Files\Apache Software Foundation\Tomcat 5.0\webapps\axis set AXIS_LIB=%AXIS_HOME%\lib set AXIS_CLASSPATH=%AXIS_LIB%\axis.jar;%AXIS_LIB%\commons-discovery.jar; %AXIS_LIB%\commons-logging.jar;%AXIS_LIB%\jaxrpc.jar;%AXIS_LIB%\saaj.jar; %AXIS_LIB%\log4j-1.2.8.jar;%AXIS_LIB%\xml-apis.jar;%AXIS_LIB%\xercesImpl.jar ``` 2. **验证安装**:通过浏览器访问 `http://127.0.0.1:8080/axis/` 来检查 Axis 是否安装成功。 #### 三、创建 Web 服务示例 ##### 1. DII (Dynamic Invocation Interface) 方式 **步骤**: 1. **编写 Web 服务**:创建一个简单的 HelloWorld 类,实现 getName 方法返回问候语。 ```java public class HelloWorld { public String getName(String name) { return "Hello " + name; } } ``` 将上述代码保存为 `HelloWorld.java`,并将其编译成 `.class` 文件。 2. **部署 Web 服务**:将编译好的 `.class` 文件放置在 Axis 的 `webapps` 目录下,并修改文件名为 `HelloClient.jws`。 3. **生成 WSDL**:通过浏览器访问 `http://localhost:8080/axis/HelloClient.jws?wsdl`,系统将自动生成相应的 WSDL 文件。 4. **编写客户端**:创建一个客户端类 `TestHelloWorld.java`,使用 Axis 提供的 API 调用 Web 服务。 ```java import javax.xml.namespace.QName; import org.apache.axis.client.Call; import org.apache.axis.client.Service; public class TestHelloWorld { public static void main(String[] args) { try { String endpoint = "http://localhost:8080/axis/HelloWorld.jws"; Service service = new Service(); Call call = (Call) service.createCall(); call.setOperationName(new QName("http://localhost:8080/axis/HelloWorld.jws", "getName")); call.setTargetEndpointAddress(new java.net.URL(endpoint)); String ret = (String) call.invoke(new Object[]{"wRitchie"}); System.out.println("return value is [" + ret + "]"); } catch (Exception ex) { ex.printStackTrace(); } } } ``` 5. **运行测试**:在 Eclipse 中运行 `TestHelloWorld.java`,可以看到返回值 `[Hellow Ritchie]`。 ##### 2. Dynamic Proxy 方式 **步骤**: 1. **部署服务端程序**:同 DII 方式。 2. **编写客户端**:与 DII 方式的客户端类似,但是使用 Dynamic Proxy 时,客户端不需要手动调用 `invoke` 方法来调用远程方法,而是直接调用代理对象的方法即可。 3. **运行测试**:同样地,在 Eclipse 中运行客户端程序,验证服务调用是否成功。 #### 四、总结 通过本文的学习,我们了解了 Axis 1.x 系列的基本概念和使用方法,包括如何搭建 Axis 的开发环境、如何创建简单的 Web 服务以及如何编写客户端进行调用。Axis 作为一款成熟的 Web 服务框架,不仅提供了丰富的功能,还拥有稳定的性能表现和详尽的技术文档支持,非常适合用于企业级应用的开发。
- wwwxxxkkk2012-10-14简单实用,学习参考
- daxia1862012-12-27挺好的入门实例,谢谢分享
- 粉丝: 58
- 资源: 60
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 绩效考核管理制度.doc
- 企业绩效考核制度及方案(实例).doc
- 长虹集团绩效管理手册.doc
- 绩效考核制度.doc
- 美的干部绩效考核办法.doc
- 生产型企业绩效考核方案.doc
- 中国联通:绩效管理操作手册.doc
- 公司绩效考核全套流程表格.docx
- 中通关键岗位薪酬设计方案.doc
- “探讨功率因素调节中MPPT和SVPWM技术在三相光伏并网逆变器仿真模型中的应用:精确谐波畸变控制与性能优化”,500kW三相光伏并网逆变器的仿真模型: 1.光伏PV, DC DC采用MPPT最大功率
- buildnumber-maven-plugin-javadoc-1.2-7.el7.x64-86.rpm.tar.gz
- DSP2837系列串口升级方案:基于VS2013的双核与单核升级解决方案及源代码分享,DSP28377D串口升级方案 串口双核升级,上位机采用vs2013开发 稍微修改可支持2837x系列的单、双核
- bwidget-1.9.0-6.el7.x64-86.rpm.tar.gz
- 蓄电池与超级电容混合储能系统的功率分配及SOC管理策略-基于Matlab Simulink仿真模型探究,蓄电池与超级电容混合储能并网matlab simulink仿真模型 (1)混合储能采用低通滤
- byacc-1.9.20130304-3.el7.x64-86.rpm.tar.gz
- 1737485585760.png