<!DOCTYPE html>
<!--
 | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-07-30 
 | Rendered using Apache Maven Fluido Skin 1.6
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta name="Date-Revision-yyyymmdd" content="20170730" />
    <meta http-equiv="Content-Language" content="en" />
    <title>Apache Axis2 &#x2013; Apache Axis2 User's Guide- Introduction to Services</title>
    <link rel="stylesheet" href="../css/apache-maven-fluido-1.6.min.css" />
    <link rel="stylesheet" href="../css/site.css" />
    <link rel="stylesheet" href="../css/print.css" media="print" />
      <script type="text/javascript" src="../js/apache-maven-fluido-1.6.min.js"></script>
<meta name="generator" content="HTML Tidy for Windows (vers 14 June 2007), see www.w3.org" /><meta http-equiv="content-type" content="" />      </head>
    <body class="topBarDisabled">
      <div class="container-fluid">
      <div id="banner">
        <div class="pull-left"><a href="http://www.apache.org/" id="bannerLeft"><img src="http://www.apache.org/images/asf_logo_wide.png"  alt="Apache Axis2"/></a></div>
        <div class="pull-right"><a href=".././" id="bannerRight"><img src="../images/axis.jpg" /></a></div>
        <div class="clear"><hr/></div>
      </div>

      <div id="breadcrumbs">
        <ul class="breadcrumb">
        <li id="publishDate">Last Published: 2017-07-30<span class="divider">|</span>
</li>
          <li id="projectVersion">Version: 1.7.6<span class="divider">|</span></li>
        <li class=""><a href="http://www.apache.org" class="externalLink" title="Apache">Apache</a><span class="divider">/</span></li>
      <li class=""><a href="../index.html" title="Axis2/Java">Axis2/Java</a><span class="divider">/</span></li>
    <li class="active ">Apache Axis2 User's Guide- Introduction to Services</li>
        </ul>
      </div>
      <div class="row-fluid">
        <div id="leftColumn" class="span2">
          <div class="well sidebar-nav">
<ul class="nav nav-list">
          <li class="nav-header">Axis2/Java</li>
    <li><a href="../index.html" title="Home"><span class="none"></span>Home</a>  </li>
    <li><a href="../download.html" title="Downloads"><span class="none"></span>Downloads</a>  </li>
    <li><a href="javascript:void(0)" title="Release Notes"><span class="icon-chevron-down"></span>Release Notes</a>
      <ul class="nav nav-list">
    <li><a href="../release-notes/1.6.1.html" title="1.6.1"><span class="none"></span>1.6.1</a>  </li>
    <li><a href="../release-notes/1.6.2.html" title="1.6.2"><span class="none"></span>1.6.2</a>  </li>
    <li><a href="../release-notes/1.6.3.html" title="1.6.3"><span class="none"></span>1.6.3</a>  </li>
    <li><a href="../release-notes/1.6.4.html" title="1.6.4"><span class="none"></span>1.6.4</a>  </li>
    <li><a href="../release-notes/1.7.0.html" title="1.7.0"><span class="none"></span>1.7.0</a>  </li>
    <li><a href="../release-notes/1.7.1.html" title="1.7.1"><span class="none"></span>1.7.1</a>  </li>
    <li><a href="../release-notes/1.7.2.html" title="1.7.2"><span class="none"></span>1.7.2</a>  </li>
    <li><a href="../release-notes/1.7.3.html" title="1.7.3"><span class="none"></span>1.7.3</a>  </li>
    <li><a href="../release-notes/1.7.4.html" title="1.7.4"><span class="none"></span>1.7.4</a>  </li>
    <li><a href="../release-notes/1.7.5.html" title="1.7.5"><span class="none"></span>1.7.5</a>  </li>
    <li><a href="../release-notes/1.7.6.html" title="1.7.6"><span class="none"></span>1.7.6</a>  </li>
      </ul>
  </li>
    <li><a href="../modules/index.html" title="Modules"><span class="none"></span>Modules</a>  </li>
    <li><a href="../tools/index.html" title="Tools"><span class="none"></span>Tools</a>  </li>
          <li class="nav-header">Documentation</li>
    <li><a href="../docs/toc.html" title="Table of Contents"><span class="none"></span>Table of Contents</a>  </li>
    <li><a href="../docs/installationguide.html" title="Installation Guide"><span class="none"></span>Installation Guide</a>  </li>
    <li><a href="../docs/quickstartguide.html" title="QuickStart Guide"><span class="none"></span>QuickStart Guide</a>  </li>
    <li><a href="../docs/userguide.html" title="User Guide"><span class="none"></span>User Guide</a>  </li>
    <li><a href="../docs/jaxws-guide.html" title="JAXWS Guide"><span class="none"></span>JAXWS Guide</a>  </li>
    <li><a href="../docs/pojoguide.html" title="POJO Guide"><span class="none"></span>POJO Guide</a>  </li>
    <li><a href="../docs/spring.html" title="Spring Guide"><span class="none"></span>Spring Guide</a>  </li>
    <li><a href="../docs/webadminguide.html" title="Web Administrator's Guide"><span class="none"></span>Web Administrator's Guide</a>  </li>
    <li><a href="../docs/migration.html" title="Migration Guide (from Axis1)"><span class="none"></span>Migration Guide (from Axis1)</a>  </li>
          <li class="nav-header">Resources</li>
    <li><a href="../faq.html" title="FAQ"><span class="none"></span>FAQ</a>  </li>
    <li><a href="../articles.html" title="Articles"><span class="none"></span>Articles</a>  </li>
    <li><a href="http://wiki.apache.org/ws/FrontPage/Axis2/" class="externalLink" title="Wiki"><span class="none"></span>Wiki</a>  </li>
    <li><a href="../refLib.html" title="Reference Library"><span class="none"></span>Reference Library</a>  </li>
    <li><a href="../apidocs/index.html" title="Online Java Docs"><span class="none"></span>Online Java Docs</a>  </li>
          <li class="nav-header">Get Involved</li>
    <li><a href="../overview.html" title="Overview"><span class="none"></span>Overview</a>  </li>
    <li><a href="../svn.html" title="Checkout the Source"><span class="none"></span>Checkout the Source</a>  </li>
    <li><a href="../mail-lists.html" title="Mailing Lists"><span class="none"></span>Mailing Lists</a>  </li>
    <li><a href="../release-process.html" title="Release Process"><span class="none"></span>Release Process</a>  </li>
    <li><a href="../guidelines.html" title="Developer Guidelines"><span class="none"></span>Developer Guidelines</a>  </li>
    <li><a href="../siteHowTo.html" title="Build the Site"><span class="none"></span>Build the Site</a>  </li>
          <li class="nav-header">Project Information</li>
    <li><a href="../team-list.html" title="Project Team"><span class="none"></span>Project Team</a>  </li>
    <li><a href="../issue-tracking.html" title="Issue Tracking"><span class="none"></span>Issue Tracking</a>  </li>
    <li><a href="http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/" class="externalLink" title="Source Code"><span class="none"></span>Source Code</a>  </li>
    <li><a href="../thanks.html" title="Acknowledgements"><span class="none"></span>Acknowledgements</a>  </li>
          <li class="nav-header">Apache</li>
    <li><a href="http://www.apache.org/licenses/LICENSE-2.0.html" class="externalLink" title="License"><span class="none"></span>License</a>  </li>
    <li><a href="http://www.apache.org/foundation/sponsorship.html" class="externalLink" title="Sponsorship"><span class="none"></span>Sponsorship</a>  </li>
    <li><a href="http://www.apache.org/foundation/thanks.html" class="externalLink" title="Thanks"><span class="none"></span>Thanks</a>  </li>
    <li><a href="http://www.apache.org/security/" class="externalLink" title="Security"><span class="none"></span>Security</a>  </li>
  </ul>
          <hr />
          <div id="poweredBy">
              <div class="clear"></div>
              <div class="clear"></div>
              <div class="clear"></div>
              <div class="clear"></div>
  <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="../images/logos/maven-feather.png" /></a>
              </div>
          </div>
        </div>
        <div id="bodyColumn"  class="span10" >
<html lang="en" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">

<a name="introservices" id="introservices"></a>

<h1>Apache Axis2 User's Guide - Introduction to Services</h1>

<p>The term &quot;Web services&quot; can apply to a number of different ways
of sending information back and forth. However, this guide focuses
on the sending and receiving of SOAP messages. SOAP messages are
XML documents that consist of an &quot;envelope&quot; containing a &quot;payload&quot;
(see Code Listing 4).</p>

<div class="section">
<h2><a name="Content"></a>Content</h2>

<ul>

<li><a href="userguide.html#intro">Introducing Axis2</a><br />

<ul>

<li><a href="userguide.html#whatis">What is Axis2?</a></li>

<li><a href="userguide.html#underhood">What's under the
hood?</a></li>

<li><a href="userguide.html#handlessoap">How Axis2 handles SOAP
messages</a></li>

<li><a href="userguide.html#distributions">Axis2
distributions</a></li>

<li><a href="userguide.html#sbd">The Axis2 Standard Binary
Distribution</a></li>

<li><a href="userguide.html#hierarchy">Axis2.war Directory
Hierarchy</a></li>

<li><a href="userguide.html#docs">Axis2 Documents
Distribution</a></li>

<li><a href="userguide.html#clients">Axis2 and clients</a></li>
</ul>
</li>

<li><a href="userguide-installingtesting.html#installingtesting">Installing and
testing client code</a></li>

<li><a href="userguide-introtoservices.html#introservices"><b>Introduction
to Services</b></a><br />

<ul>

<li><a href="userguide-introtoservices.html#messageexchange"><b>Message
Exchange Patterns</b></a></li>
</ul>
</li>

<li><a href="userguide-creatingclients.html#createclients">Creating
Clients</a><br />

<ul>

<li><a href="userguide-creatingclients.html#choosingclient">Choosing a Client
Generation Method</a></li>

<li><a href="userguide-creatingclients.html#generating">Generating
Clients</a></li>

<li><a href="userguide-creatingclients.html#adb">Axis Data Binding
(ADB)</a></li>
</ul>
</li>

<li><a href="userguide-buildingservices.html#buildservices">Building
Services</a><br />

<ul>

<li><a href="userguide-buildingservices.html#getcomfortable">Getting
Comfortable with the Available Options</a></li>

<li><a href="userguide-buildingservices.html#createscratch">Creating a service
from scratch</a></li>

<li><a href="userguide-buildingservices.html#deploypojo">Deploying
Plain Old Java Objects</a></li>

<li><a href="userguide-buildingservices.html#deployrun">Deploying
and running an Axis2 service created from WSDL</a></li>
</ul>
</li>

<li><a href="userguide-samples.html">Samples</a></li>

<li><a href="userguide-forfurtherstudy.html">For Further
Study</a></li>
</ul>

<div class="section">
<h3><a name="Code_Listing_4:_Example_SOAP_Message"></a>Code Listing 4: Example SOAP Message</h3>

<div>
<pre>
&lt;?xml version='1.0' ?&gt;
&lt;env:Envelope xmlns:env=&quot;http://www.w3.org/2003/05/soap-envelope&quot;
xmlns:wsa=&quot;http://www.w3.org/2005/03/addressing&quot;&gt; 
 &lt;env:Header&gt;

    &lt;wsa:MessageID&gt;
      http://ws.apache.org/9C21DE32-DB42-1228-C42E-66CB101421AD
    &lt;/wsa:MessageID&gt;
    &lt;wsa:ReplyTo&gt;
      &lt;wsa:Address&gt;http://example.com/projects/clientApp&lt;/wsa:Address&gt;
    &lt;/wsa:ReplyTo&gt;
    
&lt;wsa:To&gt;http://example.com/axis2/publishingService&lt;/wsa:To&gt;
    
&lt;wsa:Action&gt;http://example.com/axis2/addDocument&lt;/wsa:Action&gt;
 
&lt;/env:Header&gt;
 &lt;env:Body&gt;

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

 &lt;/env:Body&gt;
&lt;/env:Envelope&gt;
</pre></div>

<p>This XML document consists of the outer element or the SOAP
Envelope, and its contents. The SOAP Envelope is in the SOAP
namespace, http://www.w3.org/2003/05/soap-envelope, prefixed as
env: and contains up to two children. This envelope is a standard
format that pertains to every single SOAP message sent and received
by any SOAP Web service.</p>

<p>The contents of the Envelope consists of two parts; the first
being the SOAP headers-the contents of the env:Header element.
These headers, such as the WS-Addressing elements shown here,
provide additional information about the message and how it should
be handled. A SOAP message may carry headers relating to several
aspects of the message, or it may carry no headers at all. These
headers are typically processed by the message handlers.</p>

<p>The second and arguably the most important part of the message
is the payload, which consists of the contents of the env:Body
element. This is the actual message intended for the receiver, and
it is the information that the main application will ultimately
process.</p>
<a name="messageexchange" id="messageexchange"></a>
</div>
<div class="section">
<h2><a name="Message_Exchange_Patterns"></a>Message Exchange Patterns</h2>

<p>Although all SOAP messages carry the same structure, the ways in
which they are used can be combined into a number of different
&quot;message exchange patterns&quot;, or MEPs. The two major message
exchange patterns are:</p>

<ul>

<li>In-Out: in this MEP, the client sends a SOAP message to the
server, which processes the message and sends a response back. This
is probably the most commonly used MEP, and is useful for tasks
such as searching for information or submitting information in
situations in where acknowledgment is important.</li>

<li>In-Only: In this MEP, the client sends a message to the server
without expecting a response. You may use this MEP for activities
such as pinging a server to wake it up, reporting logging
information for which you do not need an acknowledgment and so
on.</li>
</ul>

<p>Within these two MEPs, you also have several variables to
consider:</p>

<ul>

<li>Blocking versus non-blocking: When the client sends a message,
the application may wait to receive a response before moving on, or
it may simply send a message and move on by specifying a callback
action to be completed when the response is received.</li>

<li>Number of parameters: Ultimately, a message sent from a client
to server is intended to execute a particular action. That action
may not require any parameters, or it may require one or more
parameters. These parameters must be encoded as part of the payload
of the message.</li>
</ul>

<p>Taking all these options into consideration, you can create
virtually any MEP. For example, you can create an Out-Only system
by reversing roles for the In-Only MEP. Apache Axis2 also includes
support for less prominent MEPs, such as Robust-In-Only.</p>

<p><b>See Next Section</b> - <a href="userguide-creatingclients.html#createclients">Creating
Clients</a></p>

</html>
        </div>
      </div>
    </div>
    <hr/>
    <footer>
      <div class="container-fluid">
        <div class="row-fluid">
            <p>Copyright &copy;2004&#x2013;2017
<a href="https://www.apache.org/">The Apache Software Foundation</a>.
All rights reserved.</p>
        </div>
        </div>
    </footer>
    </body>
</html>