Axis开发WebService 指南
一、 开发环境
l MyEclipse 6.5
l Tomcat 6.0.24
l Jdk 1.6.0_22
l Axis1.4
二、Axis简介:
axis全称Apache EXtensible Interaction System 即 阿帕奇 可扩展交互系统。Axis本质上就是一个SOAP引擎,提供创建 服务器端、客户端和网关SOAP操作的基本框架。Axis目前版本是为Java编写的,不过为C++的版本正在开发中。但Axis并不完全是一个SOAP引擎,它还是一个独立的SOAP服务器和一个嵌入Servlet引擎(例如Tomcat)的服务器。
下载1.4 Final 链接地址:
三、Java开发Webservice 示例
Axis支持三种WebService 的部署和开发,分别为:
1、Dynamic Invocation Interface(DII)方式
2、Dynamic Proxy方式
3、Stubs方式
Stubs方式是最通用的做法,又因其灵活的特点,建议使用这种方式.
下面是详细的开发步骤:
1) 创建web工程
1、 MyEclipse 6.5创建web project,取名为axistest;
2、 新建文件夹 文件夹名为lib,然后 将下载下来的axis 其 axis-1_4\lib 目录下的jar 拷贝到ib目录下,将这些jar引入到axistest classpath 下,如图:
2) .编写Server 程序
1、 新建class,包取名:server 类名:HelloServer
- <span style="">package Server;
- /**
- * 开发webservice: 服务器端
- * @author lvqing
- *
- */
- public class HelloServer {
- public String sayHello(String name){
- return "hello:"+name;
- }
- }</span>
结构图:
2、配置web.xml
web.xml文件很容易配置,拷贝axis包里面的WebService示例的web.xml配置到我们的工程中的web.xml中就可以了。
·
3) 部署 web project
利用MyEclipse部署工具 将我们的项目部署到Tomcat\webapp目录下
4) 创建 deploy.wsdd文件
这个文件可以在任意目录下创建,但是为了维护方便 ,我将它创建在zxistest 项目Src:目录下:
示例代码:
5) 生成 server-config.wsdd 文件
server-config.wsdd 文件是WebService的核心配置文件。Web服务能否发布,很大程度上取决于次文件的配置
这里 我们写个批处理脚本deploy.bat:
set Axis_Lib=D:\workspace\MEE\NMA\axistest\lib
set Java_Cmd=java -Djava.ext.dirs=%Axis_Lib%
set Axis_Servlet=http://localhost:8080/axistest/servlet/AxisServlet
%Java_Cmd% org.apache.axis.client.AdminClient -l %Axis_Servlet% deploy.wsdd
pause;
接下来,在执行deploy.bat前,请确保Tomcat 服务已运行,否则在Dos命令窗口中看到如下错误:
看到如下图运行的结果,表明已经在Tomcat\webapps\axistest\WEB-INF目录下 生成了server-config.wsdd文件. (Activation.jar 和 mail.jar这两个包虽然没有加入到CLASSPATH中,但是不影响我们的开发。)
好了,大功告成了!webservice 发布成功了,重启Tomcat,我们来测试一下,看是否发布成功.
在IE上输入: http://localhost:8080/axistest/services/helloserver?wsdl
看到如图结果表明发布成功:
在IE上输入: http://localhost:8080/axistest/services/helloserver?wsdl ,点击文件 → 另存为.存到a xistest 项目Src:目录下
7)Wsdl2Java
为了方便,我们写个批处理脚本 WSDL2Java.bat
set Axis_Lib=D:\workspace\MEE\NMA\axistest\lib
set Java_Cmd=java -Djava.ext.dirs=%Axis_Lib%
set Output_Path=D:\workspace\MEE\NMA\axistest\src
set Package=client
%Java_Cmd% org.apache.axis.wsdl.WSDL2Java -o %Output_Path% -p %Package% helloserver.wsdl
pause;
解释下此命令:
%Output_Path%是客户端文件输出路径,%Package%是包名
这时 我们可以看到 a xistest 工程下已经生成了客户端程序,如图:
8) 客户端测试代码
终结 ……
- axistest.zip (2 MB)
- 下载次数: 472
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。