• WebService 接口调用指南


    今天有同事问webservice调用问题,记得以前(2008年)写过一篇文档,刚好可以用来做一个入门指南。

    客户端开发步骤(java):

    本例展示如何在Eclipse 环境下使用Axis2创建WebService客户端。

    一、 环境准备(如果你已具备Axis2开发环境,跳过本步骤)

    1、  Axis2 API

    本例使用的Axis2版本是1.4,请到以下地址下载:
    http://apache.mirror.phpchina.com/ws/axis2/1_4/axis2-1.4.1-bin.zip
    下载后将压缩包解压缩到任意目录。如果你希望直接使用Axis2 API进行开发,可能会需要这个包。

    2、  Axis2 Eclipse 插件( 代码生成和打包工具 )

    本例使用的插件版本是1.4,请到以下地址下载:
    打包工具:
    http://apache.mirror.phpchina.com/ws/axis2/tools/1_4/axis2-eclipse-service-archiver-wizard-1.4.zip
    代码生成工具:
    http://apache.mirror.phpchina.com/ws/axis2/tools/1_4/axis2-eclipse-codegen-wizard-1.4.zip

    其实我们只用到代码生成工具。

     

    3、  安装Axis2 Eclipse插件

    (1)      将下载到的 Axis2 的两个插件解压缩到 Eclipse 安装目录下的 plug-in 子目录;

    (2)      Axis2 API安装目录的/lib目录下,复制backport-util-concurrent-3.1.jargeronimo-stax-api_1.0_spec-1.0.1.jar这两个文件至eclipse安装目录的/plugins/Axis2_Codegen_Wizard/lib目录下,同时要编辑eclipse安装目录的/plugins/Axis2_Codegen_Wizard下的plugin.xml, 将这两个文件添加进去(红色的两项)
       <library name="lib/jibx-run-1.1.5.jar">
             <export name="*"/>
       </library>
      <library name="lib/backport-util-concurrent-3.1.jar">
             <export name="*"/>
       </library>
       <library name="lib/geronimo-stax-api_1.0_spec-1.0.1.jar">
             <export name="*"/>
       </library>
       </runtime>

    然后启动 Eclipse ,并选择“ File->New->Other ”可以找到下面两个 Wizards
    Axis2 Code Generator
    Axis2 Service Archiver,表明插件安装成功。

    二、开发客户端

    打开Eclipse,新建java项目,JDK最好选择JDK1.5。

    1、  选择“Build Classpath à Add Libraries …”,把Axis2 API安装目录 /lib 目录下所有 jar 包添加进来。

    2、新建一个package,例如com.yourcompany.client

    3、使用“File à New à Other ”,在选择向导窗口中选择Axis2 Wizard下的Axis2 Code Generator插件。  Next

    4、 选择“Generate java source code from a WSDL file”,Next

    5、WSDL file  location中填入WSDL访问地址,例如:http://192.168.0.1/axis2/services/xxx?wsdl。Next。

    6、Codegen option选择 default。Next。

    7、选择输出路径,点中“Browse and select a project on current eclipse workspace”,然后点击“Browse…”按钮,选择当前项目。FinishCodegen插件生成客户端代理代码完毕

    8、新建测试类,调用WebService 接口方法。实例代码:

    public class OrderServiceClient {
    public static void main(String[] args)throws AxisFault{
    OrderServiceStub stub = new OrderServiceStub();
    //
    测试按手机号查找订购信息
    OrderServiceStub.GetOrderInfoDFByPhone request = new OrderServiceStub.GetOrderInfoDFByPhone();
           
            request.setPhone("15969000000");
            OrderInfoDF[] result=null;
            try{
            result=stub.getOrderInfoDFByPhone(request).get_return();    
            }catch(Exception e){
            e.printStackTrace();
            }
            if(result!=null){
            for(int i=0;i<result.length;i++){
            OrderInfoDF o=result[i];
            System.out.println("###################");
            System.out.println("
    区号:"+o.getAreaid());
            System.out.println("
    户号:"+o.getCustomerid());
            System.out.println("
    订购状态:"+o.getLastsendflag());
            System.out.println("
    最后发送时间:"+o.getLastsendtime());
            System.out.println("
    订购指令:"+o.getOrderaction());
            System.out.println("
    订购时间:"+o.getOrdertime());
            System.out.println("
    手机号:"+o.getPhone());
            System.out.println("
    姓名:"+o.getUsername());
            }
            }

    }

    运行结果如下:

    ###################

    区号:0871

    户号:30200363

    订购状态:0

    最后发送时间:2008-12-29 15:39:38

    订购指令:DF#30200363#0871

    订购时间:2008-07-30 15:07:46

    手机号:15969000000

    姓名:null

    ###################


  • 相关阅读:
    webpack中文网的错误&&未更新内容(webpack4)
    本地运行别人的vue项目;新建一个vue项目;打包并部署一个vue项目
    ajax/JSON
    弹性盒模型,FLEX
    opencv-python-学习笔记五(图像的基本操作)
    opencv-python-学习笔记四(创建滑动条)
    opencv-python-学习笔记三(鼠标事件)
    opencv-python-学习笔记二(利用opencv绘图)
    opencv-python-学习笔记一(图像的读取与写入)
    开发Koa 必须用的插件
  • 原文地址:https://www.cnblogs.com/encounter/p/2188533.html
Copyright © 2020-2023  润新知