如何根据带账号密码的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


阅读排行
- 1Java Swing组件BoxLayout布局用法示例
- 2java中-jar 与nohup的对比
- 3Java邮件发送程序(可以同时发给多个地址、可以带附件)
- 4Caused by: java.lang.ClassNotFoundException: org.objectweb.asm.Type异常
- 5Java中自定义异常详解及实例代码
- 6深入理解Java中的克隆
- 7java读取excel文件的两种方法
- 8解析SpringSecurity+JWT认证流程实现
- 9spring boot里增加表单验证hibernate-validator并在freemarker模板里显示错误信息(推荐)
- 10深入解析java虚拟机




