webservice客户端调用方式
上一篇是讲的webservice打包方式发布。 这一篇介绍客户端调用方式 ???????????? 这里不做介绍了,可阅读我的博客:http://www.voidcn.com/article/p-atpbtmve-bgw.html方法2)脚本生成方式 ?????????? 配置环境变量:AXIS2_HOME???? C:UsersabcDownloadsaxis2-1.6.2-binaxis2-1.6.2 ???????? ? path 增加 %AXIS2_HOME%bin ????????? cd? myaxis(项目所在的目录)。 ???????? myaxis是我项目名称。 ???????? 注意若这里出现了一个问题:生成的SayHelloStub.java报编译错 org.apache.axis2.client.Stub找不到 ????? ? 需要引入axis2-1.6.2bin所有的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(); } } }方法3)eclipse自动生成客户端 ?? ? ? ? ? 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插件 安装成功后选择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(); } } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |