Web Service之Axis1.x入门一
由于最近工作要用上Web Serive,之前一点都没接触过,而且是使用Axis1.x框架,于是就开始恶补下。本文是本人的学习总结,若有发现有什么错误,请见谅,若你有更好的建议请联系我,欢迎你与我交流。
Axis简介???
Axis是一项Apache开源的Web Service运行引擎。Axis分Axis1.x与Axis2。本文将以Axis1.4为例。
开发环境???
Aixs1.4, 若没有请到这http://www.apache.org/dyn/closer.cgi/ws/axis/1_4下载?? ?
JDK1.6???
Tomcat6.0
?
Axis安装
1.将下载的axis-bin-1_4.zip进行解压,解压后如下:???

2.进入webapps目录,拷贝axis文件夹的所有文件到tomcat里面的wbapps目录里面
3.启动tomcat,打开浏览器,输入地址http://localhost:8080/axis??

4.点击Validation 注:没有Error提示才算完成安装,若出现Error,都是缺少相应的jar包。

开发自己的Web Service
Axis提供了两种发布模式
1.即时发布,也就是把一个后缀为.java文件改成.jws,注意这个文件的内容不能带包
2.定制发布,通过server-config.xml里面部署进行发布
首先来看看即时发布
服务端:
1.在tomcat的webapps/axis目录下,新建一个Hello.java文件,内容如下:
?
public class Hello() { public String sayHello(String name) { return "Hello:" + name; }}?2.重启tomcat,然后在浏览器输入http://localhost:8080/axis/Hello.jws

3.点击Click to see the WSDL,若出现效果如下,恭喜你,发布成功,服务端就是提供一个sayHello的接口

?
客户端
建立一个普通Java工程,添加axis/WEB-INF/lib目录下的jar包
?
public class Client{public static void main(String[] args) {//目标地址,也就是wsdl的地址String wsdlURL = "http://localhost:8080/axis/Hello.jws";//提供接口名String serviceName = "sayHello";//创建服务对象Service service = new Service();//创建调用对象Call call = service.createCall();//设置调用目标地址call.setTargetEndpointAddress(wsdlURL);//设置操作名称call.setOperationName(new QName(wsdlURL, serviceName));//传递参数String result = (String)call.invoke(new Object[]{"Tankiy"});System.out.println(result);}}?
?运行控制台,出现的结果Hello:Tankiy,恭喜你,客户端调用成功。
?
?
?? ? ?这一节就到此,下一节将讲解定制发布。
?