zoukankan      html  css  js  c++  java
  • 使用axis2访问webservice(webserivice基于.net平台实现)

    webservice url=http://10.90.11.240:8081/ExceptionWebService.asmx?WSDL;

    下载axis2组件,解压,进入bin目录,通过命令wsdl2java -uri http://10.90.11.240:8081/ExceptionWebService.asmx?WSDL -p com.zsp.proxy -s -o source

    -uri 后面运行的是 你的wsdl地址, -p 是文件生成的包名 -o source生成的文件目录,在bin目录下。

    把生成的代理类,拷贝到你的工程目录中,导入对应的包即可访问:

    例如

    POST /ExceptionWebService.asmx HTTP/1.1
    Host: 10.90.11.240
    Content-Type: text/xml; charset=utf-8
    Content-Length: length
    SOAPAction: "http://tempuri.org/ApproveException"
    
    <?xml version="1.0" encoding="utf-8"?>
    <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
      <soap:Body>
        <ApproveException xmlns="http://tempuri.org/">
          <eventName>string</eventName>
          <description>string</description>
          <occurTime>string</occurTime>
          <livingPlace>string</livingPlace>
          <eventLevel>一般 or 急件 or 紧急 or 特急</eventLevel>
          <bussinessCategory>运销 or 管道 or 设备 or HSE or 经营 or 管理 or 工程 or 科技 or 信息 or 党群 or 其它</bussinessCategory>
          <reporterId>string</reporterId>
          <contact>string</contact>
          <systemId>string</systemId>
          <businessPK>string</businessPK>
          <remark>string</remark>
          <isRelease>boolean</isRelease>
          <measures>string</measures>
        </ApproveException>
      </soap:Body>
    </soap:Envelope>

    访问时:

    public class Test2 {
    
        public static void main(String[] args) throws RemoteException {
            // TODO Auto-generated method stub
            ExceptionServiceStub proxy = new ExceptionServiceStub();
    
            ExceptionServiceStub.ApproveException exp = new ExceptionServiceStub.ApproveException();
            exp.setContact("374378");
            exp.setDescription("描述");
            exp.setEventName("测试异常");
            exp.setIsRelease(true);
            exp.setLivingPlace("发生地点");
            exp.setMeasures("47477474");
            exp.setOccurTime("2019-09-09");
            exp.setSystemId("xj_001");
            exp.setRemark("备注");
            exp.setEventLevel(EmergencyDegree.一般);
            exp.setBussinessCategory(BusinessCategory.HSE);
            exp.setBusinessPK("bpk");
            exp.setReporterId("xxxx");
            ApproveExceptionResponse res = proxy.approveException(exp);
            System.out.println(res.getApproveExceptionResult());
        }
    
    }

    使用内部类的方式设置参数,很方便,这种方式和C#通过VS生成代理的操作方式基本一致。

    客户端需要导入的包如下:

  • 相关阅读:
    使用NoSQL Manager for MongoDBclient连接mongodb
    Shell编程(二)条件控制,流程控制及循环控制
    Shell编程(一)参数引用,特殊字符及常用的操作符
    日常使用的linux总结记录--不断更新中
    oracle数据库中的连表查询
    前端css样式2
    前端css样式
    前端基础知识
    mysql执行计划, 事务处理
    sql 索引优化
  • 原文地址:https://www.cnblogs.com/Johnzhang/p/4870915.html
Copyright © 2011-2022 走看看