SOAP = 在HTTP的基础上+XML数据。 SOAP是基于HTTP的。 SOAP的组成如下: Envelope – 必须的部分。以XML的根元素出现。 Headers – 可选的。 Body – 必须的。在body部分,包含要执行的服务器的方法。和发送到服务器的数据。
wsdl目录结构 Service- 相关服务访问点的集合例子 "><wsdl:port name="MobileCodeWSHttpPost" binding="tns:MobileCodeWSHttpPost"> <http:address location="http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx"/ </wsdl:port> </wsdl:service>Binding - 特定服务访问点与具体服务类的绑定例子
<wsdl:binding name="MobileCodeWSHttpPost" type="tns:MobileCodeWSHttpPost"> <http:binding verb="POST"/>PortType - 对于某个访问入口点类型所支持的操作的抽象集合例子
<wsdl:portType name="MobileCodeWSHttpPost"> <wsdl:operation name="getMobileCodeInfo"> <wsdl:input message="tns:getMobileCodeInfoHttpPostIn"/> <wsdl:output message="tns:getMobileCodeInfoHttpPostOut"/> </wsdl:operation> </wsdl:portType>Message - 通信消息的数据结构的抽象类型化定义。使用Types所定义的类型来定义整个消息的数据结构
<wsdl:message name="getMobileCodeInfoHttpPostIn"> <wsdl:part name="mobileCode" type="s:string"/> <wsdl:part name="userID" type="s:string"/> </wsdl:message> <wsdl:message name="getMobileCodeInfoHttpPostOut"> <wsdl:part name="Body" element="tns:string"/> </wsdl:message> 根据wsdl文档通过JDK生成生成客户端调用代码 通过JAVA_HOME\bin目录下的wsimport.exe生成客户端调用代码。 例如:wsimport -s . -p com.project.test d:/project/demo.wsdl -s 命令将生成 .java文件和 .class文件 。如果是-d的话只生成 .class文件 -p 制定生成的.java文件 和.class文件的包名