上一篇
目    录
下一篇
  Apache Axis2用户指南 - 服务介绍

术语“Web services”可以适用于许多不同的来回发送消息的方法。然而,本篇指南主要集中于收发SOAP消息。SOAP消息是一个XML文档,它包括信封和内容。 (见代码列表4)。

  目录


代码列表4:例子SOAP消息
<?xml version='1.0' ?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"

xmlns:wsa="http://www.w3.org/2005/03/addressing"> 
 <env:Header>

    <wsa:MessageID>
      http://ws.apache.org/9C21DE32-DB42-1228-C42E-66CB101421AD
    </wsa:MessageID>
    <wsa:ReplyTo>
      <wsa:Address>http://example.com/projects/clientApp</wsa:Address>

    </wsa:ReplyTo>
    
<wsa:To>http://example.com/axis2/publishingService</wsa:To>
    
<wsa:Action>http://example.com/axis2/addDocument</wsa:Action>
 
</env:Header>
 <env:Body>

  <addDocument>
   <docTitle>What I Did On My Summer Vacation</doctitle>
   <docSubtitle>Children's Essays from Accross the World</docSubtitle>
   <docLocation>contentRepos/summerVac.doc</docLocation>

  </addDocument>

 </env:Body>
</env:Envelope>
XML文档包括外层元素或者说SOAP Envelope,和它的内容。SOAP Envelope在SOAP namespace(http://www.w3.org/2003/05/soap-envelope)中,,加上前缀env:,还包括两个子元素。 这个信封是一个标准格式,任何SOAP Web service收发的每个单一SOAP消息都包含它。Envelope内容包括两部分:第一部分是SOAP header,env:Header元素的内容。这些header,例如在这里展示的WS-Addressing元素,提供了消息和如何被处理的额外信息。一个SOAP消息可以带有多个关于消息的header,或者它也可以不带任何header。这些header通常将由消息处理器处理。第二部分,也是最重要的部分是负载,它包括env:Body元素的内容。这个是实际要发送给接收者的消息,也是主要应用程序将最终处理的信息。

  消息交换模式

尽管所有的SOAP消息带着同样的结构,它们被使用的方式可以总结为一些不同的“消息交换模式”,或者说MEP(message exchange patterns)。两个主要的消息交换模式是: 在这两个MEP中,你也有一些变量需要考虑: 考虑了所有这些选项,你可以建立任何实际的MEP。例如,你可以通过将In-Only MEP的角色颠倒过来建立一个Out-Only的系统。Apache Axis2也包含了对次要MEP的支持,例如Robust-In-Only。见下一部分 – 建立客户端

上一篇
目    录
下一篇