本文概述
- RPC样式
- 文件样式
RPC样式1)RPC样式的Web服务使用方法名称和参数来生成XML结构。
2)很难对照模式验证生成的WSDL。
3)在RPC样式中, SOAP消息发送的元素个数相同。
4)RPC样式消息紧密耦合。
5)在RPC样式中, SOAP消息保留操作名称。
6)在RPC样式中, 参数作为离散值发送。
让我们看看RPC样式生成的WSDL文件。
WSDL文件:
在WSDL文件中, 它没有指定类型的详细信息。
<
types/>
对于消息部分, 它定义名称和类型属性。
<
message name="getHelloWorldAsString">
<
part name="arg0" type="xsd:string"/>
<
/message>
<
message name="getHelloWorldAsStringResponse">
<
part name="return" type="xsd:string"/>
<
/message>
对于soap:body, 它定义了use和namespace属性。
<
binding name="HelloWorldImplPortBinding" type="tns:HelloWorld">
<
soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="rpc"/>
<
operation name="getHelloWorldAsString">
<
soap:operation soapAction=""/>
<
input>
<
soap:body use="literal" namespace="http://srcmini.com/"/>
<
/input>
<
output>
<
soap:body use="literal" namespace="http://srcmini.com/"/>
<
/output>
<
/operation>
<
/binding>
文件样式1)可以根据预定义的架构来验证文档样式的Web服务。
2)在文档样式中, SOAP消息作为单个文档发送。
3)文档样式消息是松散耦合的。
【RPC和Document Web服务之间的区别】4)在文档样式中, SOAP消息丢失操作名称。
5)在文档样式中, 参数以XML格式发送。
让我们看看Document样式生成的WSDL文件。
WSDL文件:
在WSDL文件中, 它指定具有名称空间和schemaLocation的类型详细信息。
<
types>
<
xsd:schema>
<
xsd:import namespace="http://srcmini.com/" schemaLocation="http://localhost:7779/ws/hello?xsd=1"/>
<
/xsd:schema>
<
/types>
对于消息部分, 它定义名称和元素属性。
<
message name="getHelloWorldAsString">
<
part name="parameters" element="tns:getHelloWorldAsString"/>
<
/message>
<
message name="getHelloWorldAsStringResponse">
<
part name="parameters" element="tns:getHelloWorldAsStringResponse"/>
<
/message>
对于soap:body, 它仅定义use属性, 而不是名称空间。
<
binding name="HelloWorldImplPortBinding" type="tns:HelloWorld">
<
soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
<
operation name="getHelloWorldAsString">
<
soap:operation soapAction=""/>
<
input>
<
soap:body use="literal"/>
<
/input>
<
output>
<
soap:body use="literal"/>
<
/output>
<
/operation>
<
/binding>
推荐阅读
- Java中的字字符计数器,带源代码
- Java中带有源代码的URL源代码生成器
- Java拼图游戏
- 井字游戏的例子
- 图片拼图游戏的例子
- 没有数据库的Java Swing中的在线考试项目
- Java中的记事本以及源代码
- Java Swing教程介绍
- 如何在Windows 10中修复Failed Ntfs.sys(解决办法教程)