zoukankan      html  css  js  c++  java
  • Java 调用 WebService 客户端代码 含通过代理调用

    WebService的调用,常用的大约有3种方式:

        1、使用Axis调用

        2、使用XFire调用

        3、使用CXF调用

        项目中,采用axis进行调用,记录如下,备忘:

        ps:想当年的时候是用的xfire方式调用的,结果没做记录,现在已经完全记不得怎么玩了。所以说要多写博客啊 T_T

       版本说明:

            aixs版本:axis-bin-1_4.zip

            java环境略

        第一步:确保wsdl文件可用,文中为获取到sendSmsService.wsdl,当然url的也行。

        第二步:执行生成客户端代码的脚本。脚本内容为:

    set Axis_Lib=D:\axis-1_4\lib

    set Java_Cmd=java -Djava.ext.dirs=%Axis_Lib%

    set Output_Path=.

    set Package=info.jyzh.wap.liaoning.push

    %Java_Cmd% org.apache.axis.wsdl.WSDL2Java sendSmsService.wsdl -o%Output_Path% -p%Package% -t

     

    #查看WSDL2Java的使用帮助#%Java_Cmd% org.apache.axis.wsdl.WSDL2Java -help

     

    OK,至此,客户端代码就生成出来了。还带了一个单元测试哦。

     

    实际工作中,碰到以下情况,客户端不能直接连上webservice服务器,中间被强大的代理服务器挡住了。如下图:

     

        为此,修改生成的代码,本次是在SendMmsServiceImplServiceSoapBindingStub中作修改,如下:

        static {

                AxisProperties.setProperty("http.proxyHost","88.88.88.88");

                AxisProperties.setProperty("http.proxyPort","8080");

                AxisProperties.setProperty("http.proxyUser","asp\\yy");

                AxisProperties.setProperty("http.proxyPassword","123456");

            _operations = new org.apache.axis.description.OperationDesc[1];

            _initOperationDesc1();

        }

    如此,便可以通过代理调用webservice~

  • 相关阅读:
    oracle过期备份未删除导致磁盘撑爆
    数据文件、监听日志、告警日志、redo日志、归档日志的迁移
    linux软件卸载命令
    Nginx版本平滑升级方案
    rsync 服务搭建
    在node节点部署kubectl管理k8s集群
    源码编译安装nginx及设置开机启动项
    K8S日常运维中关于“ImagePullBackOff”报错的处理思路分析
    查看所有日志命令:journalctl
    Docker编排工具Docker Compose的使用
  • 原文地址:https://www.cnblogs.com/sarafill/p/1958196.html
Copyright © 2011-2022 走看看