美文网首页
使用wsimport命令生成webService客户端代码实例

使用wsimport命令生成webService客户端代码实例

作者: 何事西风悲画扇_4b46 | 来源:发表于2019-02-15 11:29 被阅读0次

wsimport简介

在JDK的bin文件夹中,有一个wsimport.exe工具,可依据wsdl文件生成相应的类文件,将生存在本地这些类文件拷贝到需要使用的项目中,就可以像调用本地的类一样调用webService提供的方法。该工具可以用于非Java的服务器,如用C#编写的WebService,通过wsimport则生成Java的客户端实现。
常用命令如下:

wsimport -encoding utf-8  -keep -d C:\Users\Administrator\git\alpha-api-app\src\main\java -p com.alpha.modules.kingdee.request -verbose http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx?wsdl

-encoding utf-8 指定编码 避免乱码

-keep:是否生成java源文件

-d:指定.class文件的输出目录

-s:指定.java文件的输出目录

-p:定义生成类的包名,不定义的话有默认包名

-verbose:在控制台显示输出信息

-b:指定jaxws/jaxb绑定文件或额外的schemas

-extension:使用扩展来支持SOAP1.2

image.png

soap的调用

@Test   
    public  void SaveMateriel(){
        List<MeterielEntity> mList = new ArrayList<>();
        MeterielEntity m=new MeterielEntity();
        m.setFMaterialNo("AP100000007");
        m.setFMaterialName("AP100000007");
        m.setFMatType("ZL");
        mList.add(m);
        MeterielEntity m1=new MeterielEntity();
        m1.setFMaterialNo("AP100000007");
        m1.setFMaterialName("AP100000007");
        m1.setFMatType("ZL");
        mList.add(m1);
        Map<String,Object> map=new HashMap<>();
        map.put("MaterielRoot", mList);
        String ls=JSON.toJSONString(map);
        
        System.out.println(ls);
        RxWebservice factory =new RxWebservice();
        RxWebserviceSoap  rxSoap=factory.getRxWebserviceSoap();
        String  result=rxSoap.saveMateriel(ls);
        System.out.println(result);
    }
image.png

相关文章

网友评论

      本文标题:使用wsimport命令生成webService客户端代码实例

      本文链接:https://www.haomeiwen.com/subject/whjpeqtx.html