如何根据带账号密码的WSDL地址生成JAVA代码
wsdl:
网络服务描述语言bai是Web Service的描述语言,它包含一系列描述某du个web service的定义。
一、组成:zhi
WSDL 文档可以分为两部分。顶部分由抽象定义组成,而底部分则由具体描述组成。
二、元素:
- WSDL 元素基于XML语法描述了与服务进行交互的基本元素:
- Type(消息类型):数据类型定义的容器,它使用某种类型系统(如 XSD)。
- Message(消息):通信数据的抽象类型化定义,它由一个或者多个 part 组成。
- Part:消息参数
- Operation(操作):对服务所支持的操作进行抽象描述,WSDL定义了四种操作: 1.单向(one-way):端点接受信息;
2.请求-响应(request-response):端点接受消息,然后发送相关消息;
3.要求-响应(solicit-response):端点发送消息,然后接受相关消息;
4.通知(notification):端点发送消息。
- Port Type(端口类型):特定端口类型的具体协议和数据格式规范。
- Binding:特定端口类型的具体协议和数据格式规范。
- Port:定义为绑定和网络地址组合的单个端点。
- Service:相关端口的集合,包括其关联的接口、操作、消息等。
使用jdk里面自带的wsimport工具,具体使用办法如下:
在JDK的bin文件夹中,有一个wsimport.exe,这个工具依据wsdl文件生成相应的类文件,然后用这些类文件,就可以像调用本地的类一样调用WebService提供的方。该工具可以用于非Java的服务器,如:用C#编写的WebService,通过wsimport则生成Java的客户端实现。
在命令提示符中使用如下命令:
wsimport http://localhost:8080/Demo/services/MyService?wsdl
命令参数说明:
- -d:生成客户端执行类的class文件的存放目录
- -s:生成客户端执行类的源文件的存放目录
- -p:定义生成类的包名
其他命令参数请参照:http://docs.oracle.com/javase/6/docs/technotes/tools/share/wsimport.html
使用wsimport命令后,可以得到代码,然后可以将代码拷贝到工程里面,也可以将其编译,打包成jar。
比如 javac com/xxx/*.java com/xxx/yyy/*.java
jar cvf dest.jar com/
这样我们就能得到一个dest.jar文件
使用一下webservice的框架自带的一下wsdl4j生成,由于众所周知的原因,java的webservice的jar很多,经常由于版本和实现的不同,会出现一下莫名奇妙的问题,所以这个地方还是推荐使用你所使用的框架的wsdl4j工具生成相应的stub。
wsimport -d E:\data\soap -keep -verbose -Xauthfile E:\data\soap\11.txt http://XXXXXXX
其中11.txt里填写wsdl地址:http://账号:密码@XXXXXXX
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
相关文章
Java8 使用 stream().sorted()对List集合进行排序的操作
这篇文章主要介绍了Java8 使用 stream().sorted()对List集合进行排序的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2020-10-10Java Collections.shuffle()方法案例详解
这篇文章主要介绍了Java Collections.shuffle()方法案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下2021-08-08mybatis取别名typeAliases标签的位置放错导致报错的解决
这篇文章主要介绍了mybatis取别名typeAliases标签的位置放错导致报错的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-09-09Nebula Graph介绍和SpringBoot环境连接和查询操作
Nebula Graph 是一款开源的、分布式的、易扩展的原生图数据库,能够承载包含数千亿个点和数万亿条边的超大规模数据集,并且提供毫秒级查询,这篇文章主要介绍了Nebula Graph介绍和SpringBoot环境连接和查询,需要的朋友可以参考下2022-10-10
最新评论