加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

使用axis轻松调用Webservice

发布时间:2020-12-16 23:24:57 所属栏目:安全 来源:网络整理
导读:使用axis1.4调用webservice有两种简单的方式: 1、直接使用axis提供的API调用,适用于webservice接口的参数和返回值都是String的情况。 Java代码?? try ?{?? ????Call?call?=?(Call) new ?Service().createCall();?? ????call.setTargetEndpointAddress( "ht

使用axis1.4调用webservice有两种简单的方式:

1、直接使用axis提供的API调用,适用于webservice接口的参数和返回值都是String的情况。

Java代码??

收藏代码

  1. try?{??
  2. ????Call?call?=?(Call)new?Service().createCall();??
  3. ????call.setTargetEndpointAddress("http://192.168.1.234:8080/TestAxis");??
  4. ????Object?obj?=?call.invoke("auth",?new?String[]{"username","password"});??
  5. ????System.out.println(obj);??
  6. }?catch?(Exception?e)?{??
  7. ????e.printStackTrace();??
  8. }??

?2、使用axis提供的工具类org.apache.axis.wsdl.WSDL2Java先生成客户端stub,然后像使用本地方法一样调用远程接口。可以按如下方式使用WSDL2Java类,WSDL2Java后面可以是url,也可是是wsdl文件。

? ??java -Djava.ext.dirs=e:/axis/lib org.apache.axis.wsdl.WSDL2Java http://192.168.1.234:8080/TestAxis.wsdl

这样在执行java的当前路径下就会生成TestAxis接口的客户端stub类。然后使用如下方式调用webservice,这种方式适合webservice接口的参数或返回值中包含自定义类的情况。

?

????URL?url?=?new?URL("http://192.168.1.234:8080/TestAxis");??
  • ????TestAxisSoapBindingStub?stub?=?new?TestAxisSoapBindingStub(url,new?Service());??
  • ????Account?acct?=?new?Account();??
  • ????acct.setName("username");??
  • ????acct.setPassword("password");??
  • ????boolean?result?=?stub.checkAccount(acct);??
  • ????System.out.println(result);??
  • }??
  • ?

    经过测试axis1.4既可以调用axis发布的服务,也可以调用CXF发布的服务。

    (编辑:李大同)

    【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

      推荐文章
        热点阅读