blob: ed57b05ef71e1f517ff90ff6836c30a71c80a45e [file] [log] [blame]
<html lang="en">
<head>
<meta http-equiv="content-type" content="">
<title>Apache Axis2 User's Guide- The Samples</title>
<link href="../css/axis-docs.css" rel="stylesheet" type="text/css"
media="all">
</head>
<body lang="en">
<a name="samples"></a>
<h1>Apache Axis2 User's Guide - The Samples</h1>
<p>The Apache Axis2 Standard Distribution provides a number of samples you
can use as a guide for implementing specific features and capabilities. These
services are listed in this section.</p>
<h2>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">Introduction to
Services</a><br>
<ul>
<li><a href="userguide-introtoservices.html#messageexchange">Message
Exchange Patterns</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"><strong>Samples</strong></a>
<ul>
<li><a
href="userguide-samples.html#clients"><strong>Clients</strong></a></li>
<li><a
href="userguide-samples.html#services"><strong>Services</strong></a></li>
<li><a href="userguide-samples.html#wsdl"><strong>Sample WSDL
files</strong></a></li>
<li><a href="userguide-samples.html#others"><strong>Other
Samples</strong></a></li>
</ul>
</li>
<li><a href="userguide-forfurtherstudy.html">For Further Study</a></li>
</ul>
<a name="clients"></a>
<h2>Clients (in AXIS2_HOME/samples/userguide/src/clients):</h2>
<p><strong>EchoBlockingClient.java</strong>: A basic example of the
send/receive MEP.</p>
<p><strong>EchoBlockingDualClient.java</strong>: Specifies that the return
message should be sent over a different channel than the request message.</p>
<p><strong>EchoBlockingWsaBasedClient.java</strong>: Provides an example of
using the capabilities of WS-Addressing action mapping.</p>
<p><strong>EchoNonBlockingClient.java</strong>: Demonstrates an asynchronous
request using Callbacks.</p>
<p><strong>EchoNonBlockingDualClient.java</strong>: Similar to the above, but
uses a separate listener for the response.</p>
<p><strong>ClientForWebServiceWithModule.java</strong>: Simply makes a call
to a service with engaged modules.</p>
<p><strong>ClientSideModuleEngagement.java</strong>: Demonstrates the use of
modules on the client side, in addition to the server side.</p>
<p><strong>MailClient.java</strong>: Demonstrates the use of the Robust
In-Only MEP.</p>
<p><strong>PingClient.java</strong>: A simple "fire and forget" client.</p>
<p><strong>RESTClient.java</strong>: Demonstrates the ability to request a
REST response rather than a SOAP response. Also demonstrates setting
arbitrary properties on the Options object.</p>
<p><strong>TCPClient.java</strong>: Provides an example of using the TCP
transport rather than HTTP.</p>
<a name="services"></a>
<h2>Services (in AXIS2_HOME/samples/userguide):</h2>
<p><strong>groovyService.aar</strong>: Demonstrates how to use Groovy classes
in the processing of SOAP messages.</p>
<p><strong>MyService.aar</strong>: Provides simple "echo" and "ping"
operations.</p>
<p><strong>MyServiceWithModule.aar</strong>: Same as above, but demonstrates
how to engage a module.</p>
<p><strong>WsaMappingService.aar</strong>: Demonstrates the mapping of
WS-Addressing actions.</p>
<a name="wsdl"></a>
<h2>Sample WSDL files (in AXIS2_HOME/samples):</h2>
<p><strong>Axis2SampleDocLit.wsdl</strong>: Demonstrates the use of the
Document/Literal WSDL pattern, rather than RPC.</p>
<p><strong>perf.wsdl</strong>: Demonstrates the use of array values as input
values.</p>
<a name="others"></a>
<h2>Other samples</h2>
<h3>In AXIS2_HOME/samples Directory:</h3>
<!--<p><strong>amazonqs</strong>: Uses the Amazon Queue Service to store and
retrieve String objects.</p>-->
<p><strong>faulthandling</strong>: Demonstrates the use of SOAP faults and
their definitions in WSDL enabling exception processing in the client.</p>
<!--<p><strong>googlesearch</strong>: Creates a GUI-based application making use
of Google Web Services asynchronously.</p>-->
<p><strong>googleSpellcheck</strong>: Demonstrates both synchronous and
non-synchronous use of the Google Web Service in a GUI.</p>
<p><strong>mtom</strong>: Demonstrates the use of MTOM and SOAP with
Attachments to send binary files to a service.</p>
<p><strong>saopwithattachments</strong>: Demonstrates the capabilities and
power of SOAP with Attachment support and the Attachment API of Axis2.</p>
<p><strong>pojo</strong>: Example of a POJO (Plain Old Java Object) Web
service. It shows how to expose the methods of a Java class as a Web service
using Apache Aixs2.</p>
<p><strong>servicelifecycle</strong>: Demonstrates the usage of a service
life cycle and a bit of session management. The main idea is to show where
and how to use the service life cycle interface and session related
methods.</p>
<!--<p><strong>sgccalculator</strong>: A simple calculator that demonstrates the
use of Service Groups.</p>-->
<p><strong>databinding</strong>: Demonstrates how to use WSDL2Java generated
code with Castor.</p>
<p><strong>version</strong>: A very simple service that simply outputs the
Apache Axis2 version.</p>
<p><strong>yahoorestearch</strong>: A complete example of the use of a REST
service rather than a SOAP service.</p>
<h3>External:</h3>
<p><strong>FlickrClient</strong> : Demonstrates code generation capabilities
for WSDL 2.0. The FlickrService.wsdl describes services offered by flickr in
terms of WSDL 2.0. It also demonstrates how a restful service can be
described using the HTTPBinding of wsdl 2.0.</p>
<p>Extract the <a
href="http://dist.wso2.org/products/wsas/java/nightly-build/">WSO2 WSAS for
Java nightly build distribution</a> and you will find the sample at
WSAS_HOME/samples/FlickrClient or checkout sample from SVN:
http://wso2.org/repos/wso2/trunk/wsas/java/modules/samples/FlickrClient</p>
<p><strong>See Next Section</strong> - <a
href="userguide-forfurtherstudy.html">For Further Study</a></p>
</body>
</html>