Eclipse+Axis2开发WebService.docx
- 文档编号:7354327
- 上传时间:2023-01-23
- 格式:DOCX
- 页数:15
- 大小:806.81KB
Eclipse+Axis2开发WebService.docx
《Eclipse+Axis2开发WebService.docx》由会员分享,可在线阅读,更多相关《Eclipse+Axis2开发WebService.docx(15页珍藏版)》请在冰豆网上搜索。
Eclipse+Axis2开发WebService
一、几个需要的包(以1.6.2版本为例)
1、axis2-1.6.2-war.zip(解压后为axis2-1.6.2-war文件夹)
2、axis2-1.6.2-bin.zip(解压后为axis2-1.6.2文件夹,包括一些需要的JAR)
3、axis2-eclipse-codegen-plugin-1.6.2.zip(用来将服务代码生成wsdl文件以及解析将wsdl文件生成客户端stub代码的插件)
4、axis2-eclipse-service-plugin-1.6.2.zip(用来将服务代码打包成后缀名为.aar文件的插件)
二、部署axis2war
将axis2-1.6.2-war.zip解压后的axis2-1.6.2-war文件夹下的axis2.war文件,放置于到apache-tomcat\webapps目录下,如下图:
图1
完成后,启动tomcat,访问http:
//localhost:
8080/axis2,如部署成功,则出现以下界面:
图2
三、部署Eclipse插件
将axis2-eclipse-codegen-plugin-1.6.2.zip和axis2-eclipse-service-plugin-1.6.2.zip解压后的文件org.apache.axis2.eclipse.codegen.plugin_1.6.2.jar和org.apache.axis2.eclipse.service.plugin_1.6.2.jar放置于eclipse\plugins文件夹下,如图3。
放置后,打开Eclipse,打开File—New—Other,若能看到如图4内容,说明插件配置成功。
图3
图4
四、编写服务代码
1、创建Java工程,File—New—Project—JavaProject
2、创建Class,添加代码:
packagecom.xcy;
publicclassAxis2WB{
/**
*提供了一个说Hello的服务
*@return
*/
publicStringsayHello(Stringname){
return"Hello"+name;
}
/**
*提供了一个做加法的服务
*@parama
*@paramb
*@return
*/
publicintadd(inta,intb){
returna+b;
}
}
五、打包与部署服务
File—New—Other—Axis2Wizards—Axis2ServiceArchiver,步骤如下:
图5
Next,输入Class文件路径,注:
该处路径只写到bin一级,不用到包一级。
图6
Next,选择SkipWSDL;Next—Next—Next,填写服务名与类名,注:
类名一定为全路径,即包.类。
图7
Next,指定输出文件的路径与名字,Finish。
图8
到此,一个服务的arr文件已经生成,将此文件移至之前部署的axis2,即apache-tomcat\webapps\axis2\WEB-INF\services下,重启tomcat。
图9
再次访问http:
//localhost:
8080/axis2/ , 点击Service,将看到部署的服务。
图10
图11
六、调用服务
1、生成客户端stub代码
File—New—Other—Axis2Wizards—Axis2CodeGenerator,步骤如下:
图12
Next,默认选择GenerateJavasourcecodefromaWSDLfile(根据WSDL生成webservice客户端的java代码):
图13
Next,输入WSDL路径:
图14
Next—Next,指定生成的代码放置的工程,可以选择当前工作空间中已有的工程,下图中Client即是之前已经在当前工作空间中创建的JavaProject:
图15
Finish,代码生成完成,此时Client中自动生成几个文件,如下:
图16
2、添加JAR包
右键Client—BuildPath—ConfigureBuildPath—Libraries—AddExternalJARs,添加之前解压的axis2-1.6.2(由axis2-1.6.2-bin.zip解压而来)文件夹下lib文件夹中所有的JAR文件:
图17
3、编写调用代码
右键Client—NewClass,在“Whichmethodstubswouldyouliketocreate?
”中勾选“publicstaticvoidmain(String[]args)”,类中代码如下:
packagecom.xcy;
importjava.rmi.RemoteException;
importcom.xcy.Add;
importcom.xcy.AddResponse;
importcom.xcy.Axis2WB;
importcom.xcy.Axis2WBStub;
importcom.xcy.SayHello;
importcom.xcy.SayHelloResponse;
publicclassCallTest{
/**
*@paramargs
*/
publicstaticvoidmain(String[]args)throwsRemoteException{
//TODOAuto-generatedmethodstub
//创建客户端对象
Axis2WBaxis2WB=newAxis2WBStub();
//new一个调用sayHello方法需要的参数SayHello,并且设置name
SayHellosayHello=newSayHello();
sayHello.setName("Job");
//调用web服务
SayHelloResponsesayHelloResponse=axis2WB.sayHello(sayHello);
//拿到返回结果
System.out.println(sayHelloResponse.get_return());
Addadd=newAdd();
add.setA(3);
add.setB(-1);
AddResponseaddResponse=axis2WB.add(add);
System.out.println(addResponse.get_return());
}
}
运行,控制台输出结果:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Eclipse Axis2 开发 WebService
![提示](https://static.bdocx.com/images/bang_tan.gif)