webservice客户端调用方式
来源:互联网 发布:批量查询域名是否备案 编辑:程序博客网 时间:2024/05/17 03:14
这一篇介绍客户端调用方式
方法1)手动写客户端代码
这里不做介绍了,可阅读我的博客:http://blog.csdn.net/wlbing0625/article/details/7743795
方法2)脚本生成方式
配置环境变量:AXIS2_HOME C:\Users\abc\Downloads\axis2-1.6.2-bin\axis2-1.6.2
path 增加 %AXIS2_HOME%\bin
cd myaxis(项目所在的目录)。
执行:wsdl2java -uri http://localhost:9080/axis2/services/sayHello?wsdl -p ws-s -o myaxis
-p参数指定了生成的Java类的包名
-o参数指定了生成的一系列文件保存的根目录
myaxis是我项目名称。
注意若这里出现了一个问题:生成的SayHelloStub.java报编译错 org.apache.axis2.client.Stub找不到
需要引入axis2-1.6.2\bin所有的jar即可。
编写客户端代码
- public class TestClient {
- /**
- * @param args
- */
- public static void main(String[] args) {
- try {
- //首先创建实例,内部类,为每个方法创建一个内部类
- SayHelloStub shs=new SayHelloStub();
- SayHelloStub.SayHello sh=new SayHelloStub.SayHello();
- sh.setName("大兵哥");
- System.out.println(shs.sayHello(sh).get_return());
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- }
new Web Service Client 。输入wsdl地址,自动生成stub,proxy一些文件。
再书写客户端代码。此方法比较方便。但建议初学者首先用方法1。
一路next即可。这样会在你项目中生成
一系列java文件
一般生成五个文件,要是缺少了,和你services.xml中服务名字有一定的关系。我也设置好几个才可以了。(我的设置为ttt)
客户端测试代码如下:
- import java.rmi.RemoteException;
- import org.apache.axis2.AxisFault;
- import bingbing.TttPortTypeProxy;
- public class TestClient {
- /**
- * @param args
- */
- public static void main(String[] args) {
- //代理对象
- TttPortTypeProxy proxy=new TttPortTypeProxy();
- try {
- System.out.println(proxy.sayHello("大兵哥"));
- } catch (RemoteException e) {
- e.printStackTrace();
- }
- }
- }
方法4)下载eclipse axis的client,server插件
下载eclipse axis2插件
http://mirror.bjtu.edu.cn/apache/axis/axis2/java/core/1.6.2/
我这里下载的是1.6.2/版本的axis2-eclipse-codegen-wizard.zip和axis2-eclipse-service-archiver-wizard.zip
(至于安装到eclipse我不做累赘说明了。可参考网上资料)
安装成功后选择Axis2 Code Generator
然后选择工程
下面是自动生成的代码
客户端测试代码:
- import bingbing.SayHello;
- import bingbing.TttStub;
- public class TestClient {
- /**
- * @param args
- */
- public static void main(String[] args) {
- try {
- TttStub stub=new TttStub();
- SayHello hello=new SayHello();
- hello.setName("大兵哥");
- System.out.println(stub.sayHello(hello).get_return());
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- }
- webservice客户端调用方式
- webservice客户端调用方式
- webservice客户端调用方式(cxf)
- 客户端调用WebService方式总结
- WebService客户端的几种调用方式
- 通过客户端编程的方式调用webservice
- 通过客户端编程的方式调用webservice
- 通过客户端编程方式调用webService
- WebService的两种客户端调用方式
- WebService的两种客户端调用方式
- WebService的两种客户端调用方式
- webservice--四种客户端调用方式
- WebService客户端三种调用方式整理
- webservice--四种客户端调用方式
- Webservice的四种客户端调用方式
- webservice的axis2客户端调用方式和xfire调用方式
- Atitit 动态调用webservice与客户端代理方式调用
- Apache Axis客户端调用WEBSERVICE三种方式
- ios tableView 的header for section无法加载的问题
- 51nod 1393 0和1相等串(鸽巢原理)
- three Sum Closest
- 自动寻路NavMeshAgent的使用
- Iterator模式
- webservice客户端调用方式
- 苹果开发文档 User Experience Starting Point for iOS
- JAVA集锦(三)--Model1、Model2、三层架构的华丽转变
- Thinking in Java笔记
- UVA 1146 2-SAT
- UI基础----常见控件的使用之TextView
- Python语法基础——关于全局变量与局部变量
- axis2的一个小例子
- T4M在Unity5中运行出错修改