Axis开发WebService 指南
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 链接地址: http://ws.apache.org/axis/ ? 三、Java开发Webservice 示例 Axis支持三种WebService 的部署和开发,分别为:? Stubs方式是最通用的做法,又因其灵活的特点,建议使用这种方式. 下面是详细的开发步骤: 1)???????创建web工程 1、??MyEclipse 6.5创建web project,取名为axistest; 2、??新建文件夹 文件夹名为lib,然后 将下载下来的axis 其 axis-1_4lib 目录下的jar 拷贝到ib目录下,将这些jar引入到axistest classpath 下,如图: ? 2) .编写Server 程序 1、??新建class,包取名:server??类名:HelloServer 声明sayHello方法,具体代码如下:
Java代码??
结构图: ? 2、配置web.xml web.xml文件很容易配置,拷贝axis包里面的WebService示例的web.xml配置到我们的工程中的web.xml中就可以了。 ·?
Xml代码??
?
3) 部署 web project 利用MyEclipse部署工具?将我们的项目部署到Tomcatwebapp目录下 ? ? 4) 创建?deploy.wsdd文件 这个文件可以在任意目录下创建,但是为了维护方便 ,我将它创建在zxistest 项目Src:目录下: 示例代码:
Xml代码??
deployment?xmlns="http://xml.apache.org/axis/wsdd/"???
?
5) 生成?server-config.wsdd??文件 server-config.wsdd 文件是WebService的核心配置文件。Web服务能否发布,很大程度上取决于次文件的配置 这里 我们写个批处理脚本deploy.bat: set Axis_Lib=D:workspaceMEENMAaxistestlib 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命令窗口中看到如下错误: ? 看到如下图运行的结果,表明已经在TomcatwebappsaxistestWEB-INF目录下 生成了server-config.wsdd文件.?(Activation.jar 和 mail.jar这两个包虽然没有加入到CLASSPATH中,但是不影响我们的开发。) ? 好了,大功告成了!webservice 发布成功了,重启Tomcat,我们来测试一下,看是否发布成功. 在IE上输入:?http://localhost:8080/axistest/services/helloserver?wsdl 看到如图结果表明发布成功: ? 6) 生成客户端Client wsdl文件 在IE上输入:?http://localhost:8080/axistest/services/helloserver?wsdl?,点击文件?→?另存为.存到a?xistest 项目Src:目录下 7)Wsdl2Java 为了方便,我们写个批处理脚本 WSDL2Java.bat set Axis_Lib=D:workspaceMEENMAaxistestlib set Java_Cmd=java -Djava.ext.dirs=%Axis_Lib% set Output_Path=D:workspaceMEENMAaxistestsrc set Package=client %Java_Cmd% org.apache.axis.wsdl.WSDL2Java -o %Output_Path% -p %Package% helloserver.wsdl pause; 解释下此命令: %Output_Path%是客户端文件输出路径,%Package%是包名 这时 我们可以看到?a?xistest?工程下已经生成了客户端程序,如图: ? 8) 客户端测试代码
Java代码??
package?client;??
?
终结?……
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |