WSDL

以前做项目时梳理的WDSL基础,原本记录在老博客上,现在迁移过来,参考在线W3CSchool。

wsdl (web service description language):web服务描述语言

1. WSDL 文档

wsdl文档主要通过下面这些元素来描述某个web service:

  • <portType> web service执行的操作;
  • <message> web service使用的消息;
  • <type> web service使用的数据类型;
  • <binding> web service使用的通信协议;

实例如下:

View Code
<wsdl:portType name="TraditionalSimplifiedWebServiceSoap">

<wsdl:operation name="toSimplifiedChinese">

<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">

<br /><h3>繁体字转换为简体字</h3><p>输入参数:sText = 字符串; 返回数据:字符串。

</p><br /></wsdl:documentation>

  <wsdl:input message="tns:toSimplifiedChineseSoapIn" />

  <wsdl:output message="tns:toSimplifiedChineseSoapOut" />

  </wsdl:operation>

<wsdl:operation name="toTraditionalChinese">

  <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">

<br /><h3>简体字转换为繁体字</h3><p>输入参数:sText = 字符串; 返回数据:字符串。

</p><br /></wsdl:documentation>

  <wsdl:input message="tns:toTraditionalChineseSoapIn" />

  <wsdl:output message="tns:toTraditionalChineseSoapOut" />

  </wsdl:operation>

  </wsdl:portType>

2. wsdl端口

wsdl端口描述一个web service可被执行的操作,也就是业务功能。

wsdl端口具备四种操作类型:

  • One-way:此操作接受消息,但不返回相应;
  • Request-response:此操作接受消息,并返回一个相应;
  • Solicit-response:此操作可发送一个请求,并等待返回一个相应;
  • Notification:此操作可发送一条消息,但不接收相应;

3. wsdl绑定

 wsdl绑定提供消息格式和协议细节,如下:

View Code
 <wsdl:binding name="TraditionalSimplifiedWebServiceSoap12" type="tns:TraditionalSimplifiedWebServiceSoap">



  <soap12:binding transport="http://schemas.xmlsoap.org/soap/http" />

- <wsdl:operation name="toSimplifiedChinese">

  <soap12:operation soapAction="http://webxml.com.cn/toSimplifiedChinese" style="document" />

- <wsdl:input>

  <soap12:body use="literal" />

  </wsdl:input>

- <wsdl:output>

  <soap12:body use="literal" />

  </wsdl:output>

  </wsdl:operation>

- <wsdl:operation name="toTraditionalChinese">

  <soap12:operation soapAction="http://webxml.com.cn/toTraditionalChinese" style="document" />

- <wsdl:input>

  <soap12:body use="literal" />

  </wsdl:input>

- <wsdl:output>

  <soap12:body use="literal" />

  </wsdl:output>

  </wsdl:operation>

  </wsdl:binding>

在myeclipse 8.6下利用JAX-WS发布web service服务

A. 服务端建立一个web service工程;

B. 建立一个客户端工程,并导入WSDL;工程中会自动生成相应的代理类;

WSDL

C.客户端通过调用代理类完成对web service的调用:

SayHelloService sv = new SayHelloService();

SayHelloDelegate dl = sv.getSayHelloPort();

 

 

 

你可能感兴趣的:(wsdl)