You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by ch...@apache.org on 2006/12/20 08:40:49 UTC

svn commit: r488944 [1/2] - /webservices/axis2/trunk/java/xdocs/1_1/

Author: chatra
Date: Tue Dec 19 23:40:48 2006
New Revision: 488944

URL: http://svn.apache.org/viewvc?view=rev&rev=488944
Log:
corrected html error

Modified:
    webservices/axis2/trunk/java/xdocs/1_1/userguide-buildingservices.html
    webservices/axis2/trunk/java/xdocs/1_1/userguide-codelisting5.html
    webservices/axis2/trunk/java/xdocs/1_1/userguide-codelisting7.html
    webservices/axis2/trunk/java/xdocs/1_1/userguide-creatingclients-jibx.html
    webservices/axis2/trunk/java/xdocs/1_1/userguide-creatingclients-xmlbeans.html
    webservices/axis2/trunk/java/xdocs/1_1/userguide-creatingclients.html
    webservices/axis2/trunk/java/xdocs/1_1/userguide-forfurtherstudy.html
    webservices/axis2/trunk/java/xdocs/1_1/userguide-installingtesting.html
    webservices/axis2/trunk/java/xdocs/1_1/userguide-introtoservices.html
    webservices/axis2/trunk/java/xdocs/1_1/userguide-samples.html
    webservices/axis2/trunk/java/xdocs/1_1/userguide.html

Modified: webservices/axis2/trunk/java/xdocs/1_1/userguide-buildingservices.html
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/xdocs/1_1/userguide-buildingservices.html?view=diff&rev=488944&r1=488943&r2=488944
==============================================================================
--- webservices/axis2/trunk/java/xdocs/1_1/userguide-buildingservices.html (original)
+++ webservices/axis2/trunk/java/xdocs/1_1/userguide-buildingservices.html Tue Dec 19 23:40:48 2006
@@ -1,580 +1,580 @@
-<?xml version="1.0" encoding=""?>
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-  <meta http-equiv="content-type" content="" />
-  <title>Introducing Axis2</title>
-  <link href="../css/axis-docs.css" rel="stylesheet" type="text/css"
-  media="all">
-</head>
-
-<body>
-<a name="buildservices"></a>
-
-<h1>Apache Axis2 User's Guide -Building Services</h1>
-
-<p>Now that you know how to use Axis2 to generate clients from WSDL, this
-section digs a little deeper, showing you how to create services, and how to
-create both services and clients "from scratch", so to speak.</p>
-<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"><strong>Building
-    Services</strong></a><br />
-
-    <ul>
-      <li><a
-        href="userguide-buildingservices.html#getcomfortable"><strong>Getting
-        Comfortable with Available Options</strong></a></li>
-      <li><a
-        href="userguide-buildingservices.html#createscratch"><strong>Creating
-        a service from scratch</strong></a></li>
-      <li><a
-        href="userguide-buildingservices.html#deploypojo"><strong>Deploying
-        Plain Old Java Objects</strong></a></li>
-      <li><a
-        href="userguide-buildingservices.html#deployrun"><strong>Deploying
-        and running an Axis2 service created from WSDL</strong></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>
-
-<p><a name="getcomfortable"></a></p>
-
-<h2>Getting Comfortable with Available Options</h2>
-
-<p>Axis2 provides a number of ways to create a service, such as:</p>
-<ul>
-  <li>Create a service and build it from scratch: In this case, you build
-    your service class to specifically access AXIOM OMElement objects, then
-    create the services.xml file and package it up for deployment.</li>
-  <li>Deploy Plain Old Java Objects (POJOs) as a service.</li>
-  <li>Generate the service from WSDL: Just as you can generate clients with
-    WSDL, you can generate the skeleton of a service.</li>
-</ul>
-
-<p>Let's look at these three options.</p>
-<a name="createscratch"></a>
-
-<h2>Creating a Service From Scratch</h2>
-
-<p>Creating a service from scratch is not the most convenient way to do it,
-but it does give you the most control. The process involves several steps.</p>
-
-<p><b>The short story:</b></p>
-<ol>
-  <li>Create the service class, with each operation represented by a method
-    that takes as its argument a org.apache.axiom.om.OMElement object. (An
-    OMElement is how the AXIs2 Object Model (AXIOM) represents an XML
-    element.)</li>
-  <li>Create the service descriptor, services.xml, which defines the class to
-    be used by the service and the appropriate message receivers.</li>
-  <li>Create the .aar file, with the classes in their proper locations based
-    on package and the services.xml file in the META-INF directory.</li>
-  <li>Deploy the .aar file by using the <a href="webadminguide.html">Web
-    Administration application</a> or by copying it to the Axis2 services
-    directory.</li>
-</ol>
-
-<p><b>The long story:</b></p>
-
-<p>Start by creating the service class, a plain Java class that uses classes
-from the Axis2 libraries (see Code Listing 8).</p>
-
-<h3>Code Listing 8-Creating the Service Class</h3>
-<pre>package org.apache.axis2.axis2userguide;
-
-import javax.xml.stream.XMLStreamException;
-import org.apache.axiom.om.OMAbstractFactory;
-import org.apache.axiom.om.OMElement;
-import org.apache.axiom.om.OMFactory;
-import org.apache.axiom.om.OMNamespace;
-
-public class SampleService {
-
-    public OMElement sayHello(OMElement element) 
-                             throws XMLStreamException {
-            element.build();
-            element.detach();
-
-            String rootName = element.getLocalName();
-            System.out.println("Reading "+rootName+" element");
-            
-            OMElement childElement = element.getFirstElement();
-            String personToGreet = childElement.getText();
-
-            OMFactory fac = OMAbstractFactory.getOMFactory();
-            OMNamespace omNs = fac.createOMNamespace(
-                    "http://example1.org/example1", "example1");
-            OMElement method = fac.createOMElement("sayHelloResponse", 
-omNs);
-            OMElement value = fac.createOMElement("greeting", omNs);
-            value.addChild(fac.createOMText(value, "Hello, 
-"+personToGreet));
-            method.addChild(value);
-
-            return method;
-        }
-
-     private void ping(){
-     }
-    
-}</pre>
-
-<p>Make sure to include Axis2 libraries in your class path when compiling the
-source.</p>
-
-<p>Axis2 uses AXIOM, or the AXIs Object Model, a DOM (Document Object Model)
--like structure that is based on the StAX API ( Streaming API for XML).
-Methods that act as services must take as their argument an OMElement, which
-represents the payload of the incoming SOAP message. (An OMElement is just
-AXIOM's way of representing an XML element, like a DOM Element object.) In
-this case, you're extracting the contents of the first child of the payload
-element, adding text to it, and using it as content for the return OMElement.
-Unless this is an "in only" service, these methods must return an OMElement,
-because that becomes the payload of the return SOAP message.</p>
-
-<p>To turn this class into a service, create the service description file,
-services.xml, as in Code Listing 9.</p>
-
-<h3>Code Listing 9 - Create the Service Description</h3>
-<pre>&lt;service name="UserGuideSampleService"&gt;
-    &lt;description&gt;
-        This is a sample service created in the Axis2 User's Guide
-    &lt;/description&gt;
-
-    &lt;parameter name="ServiceClass" 
-locked="false"&gt;org.apache.axis2.axis2userguide.SampleService
-&lt;/parameter&gt;
-
-    &lt;operation name="sayHello"&gt;
-        &lt;messageReceiver 
-class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/&gt;
-    &lt;/operation&gt;
-    &lt;operation name="ping"&gt;
-        &lt;messageReceiver 
-class="org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver"/&gt;
-    &lt;/operation&gt;
-&lt;/service&gt;</pre>
-
-<p>This document defines the service, what it's called by the <a
-href="webadminguide.html">Web Administration Application</a>, and the class
-used to serve requests. For each operation, it defines the appropriate
-message receiver class.</p>
-
-<p>Create a new directory, META-INF, in the main directory for the class. (In
-this case, that's the same directory that contains the org directory) and
-place the services.xml file in it.</p>
-
-<p>Create the .aar file by typing: jar cvf SampleService.aar ./*</p>
-
-<p>Deploy the SampleService.aar file by using the <a
-href="webadminguide.html">Web Administration application</a> or by copying it
-to the Axis2 services directory.</p>
-
-<p>Now you can create a client class that accesses the service directly (see
-Code Listing 10).</p>
-
-<h3>Code Listing 10 - Create a Client Class that Accesses the Service
-Directly</h3>
-<pre>package org.apache.axis2.axis2userguide;
-
-import javax.xml.stream.XMLStreamException;
-import org.apache.axiom.om.OMAbstractFactory;
-import org.apache.axiom.om.OMElement;
-import org.apache.axiom.om.OMFactory;
-import org.apache.axiom.om.OMNamespace;
-import org.apache.axis2.addressing.EndpointReference;
-import org.apache.axis2.client.Options;
-import org.apache.axis2.Constants;
-import org.apache.axis2.client.ServiceClient;
-
-public class SampleClient {
-
-       private static EndpointReference targetEPR = 
-             new EndpointReference(
-               "http://localhost:8080/axis2/services/UserGuideSampleService");
-
-        public static OMElement greetUserPayload(String personToGreet) {
-            OMFactory fac = OMAbstractFactory.getOMFactory();
-            OMNamespace omNs = fac.createOMNamespace(
-                    "http://example1.org/example1", "example1");
-            OMElement method = fac.createOMElement("sayHello", omNs);
-            OMElement value = fac.createOMElement("personToGreet", 
-omNs);
-            value.addChild(fac.createOMText(value, personToGreet));
-            method.addChild(value);
-            return method;
-        }
-
-        public static void main(String[] args) {
-            try {
-                OMElement payload = 
-SampleClient.greetUserPayload("John");
-                Options options = new Options();
-                options.setTo(targetEPR);
-                
-options.setTransportInProtocol(Constants.TRANSPORT_HTTP);
-
-                ServiceClient sender = new ServiceClient();
-                sender.setOptions(options);
-                OMElement result = sender.sendReceive(payload);
-
-                String response = result.getFirstElement().getText();
-                System.out.println(response);
-
-            } catch (Exception e) { //(XMLStreamException e) {
-                System.out.println(e.toString());
-            }
-        }
-    
-}</pre>
-
-<p>This class uses the same technique of sending and receiving OMElements,
-but it's also important to note the use of the Options class. This class
-enables you to determine properties such as the transport used for the return
-message -- the transport used for the outgoing message can be inferred from
-the URL of the destination -- and the SOAP version to use. In addition to
-providing setter and getter methods of specific properties that affect how
-the client interacts with the service, the Options class enables you to
-create inheritance relationships between Options objects, so that if a
-property is not found in the current Options object used, the client can
-check the parent Options object of the current Options object.</p>
-
-<p>Compile and run the above SampleClient.java. Make sure to have all axis2
-libraries in your class path. If all has gone well, 'Hello, John' will be
-shown as the output in the console.</p>
-<a name="deploypojo"></a>
-
-<h2>Deploying Plain Old Java Objects (POJOs)</h2>
-
-<p>One very easy way to create a Web service is simply to deploy the Java
-objects that represent the service. Start with the class, shown in Code
-Listing 11.</p>
-
-<h3><b>Code Listing 11 - Creating the Class SampleService</b></h3>
-<pre>package org.apache.axis2.axis2userguide;
-
-public class SampleService {
-
-    public void doInOnly(){
-     return; 
-    } 
-     
-    public String noParameters(){
-      return "Hello";
-    } 
-    
-    public String twoWayOneParameterEcho(String toEcho){
-      return toEcho;
-    } 
-    
-    public boolean multipleParametersAdd(float price, int itemId, 
-                             String description, String itemName){
-      //Code to handle the logic
-	    	return true;
-    } 
- 
-}</pre>
-
-<p>Next, you'll need to tell Axis2 what class corresponds to what Web service
-calls. Do this by creating a file called services.xml and adding the
-following shown in Code Listing 12.</p>
-
-<h3><b>Code Listing 12 - Creating services.xml</b></h3>
-<pre>&lt;service name="SampleService" scope="application"&gt;
-    &lt;description&gt;
-        Sample Service
-    &lt;/description&gt;
-    &lt;messageReceivers&gt;
-        &lt;messageReceiver 
-            mep="http://www.w3.org/2004/08/wsdl/in-only"
-    class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver"/&gt;
-        &lt;messageReceiver
-            mep="http://www.w3.org/2004/08/wsdl/in-out"
-    class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/&gt;
-    &lt;/messageReceivers&gt;
-    &lt;parameter name="ServiceClass"&gt;
-        org.apache.axis2.axis2userguide.SampleService
-    &lt;/parameter&gt;
-&lt;/service&gt;</pre>
-
-<p>This file makes the InOnly and InOut MEPs available to the service and
-tells Axis2 which class to call; operations must match method names. In other
-words, Axis2 automatically sends a call to the multipleParametersAdd
-operation to the
-org.apache.axis2.axis2userguide.SampleService.multipleParametersAdd()
-method.</p>
-
-<p>Now it's time to create the distribution. Arrange your files in the
-following directory structure (see Code Listing 13).</p>
-
-<h3><b>Code Listing 13- Create the Directory Structure for the
-Distribution</b></h3>
-<pre> - SampleService
-   - META-INF
-     - services.xml
-   - org
-     - apache
-       - axis2
-         - axis2userguide
-           - SampleService.class</pre>
-
-<p>Finally, deploy the service by copying the SampleService directory to the
-webapps/axis2/WEB-INF/services directory on the servlet engine. You can check to make
-sure that it's been properly deployed by checking <a
-href="http://&lt;host&gt;:&lt;port&gt;/axis2/services/listServices">http://&lt;host&gt;:&lt;port&gt;/axis2/services/listServices</a>.</p>
-<a name="deployrun"></a>
-
-<h2>Deploying and Running an Axis2 Service Created from WSDL</h2>
-
-<p>If you have a WSDL file, you can easily create and deploy a service based
-on that description. For example, to create a service based on the same WSDL
-file used in the <a href="userguide-creatingclients.html">clients section</a>
-of this document, you'd employ the following steps.</p>
-
-<p><b>The short story:</b></p>
-<ol>
-  <li>If you haven't already, <a
-    href="http://ws.apache.org/axis2/download/1_1/download.cgi#std-bin">download</a>
-    the Axis2 standard distribution.</li>
-  <li>Generate the skeleton using the WSDL2Java utility, as in: <br />
-
-    <pre>java org.apache.axis2.wsdl.WSDL2Java -uri file:///C:/apps/axis2/samples/zSample/Axis2UserGuide.wsdl -p org.apache.axis2.axis2userguide -d adb -s -wv 1.1 -ss -sd -ssi</pre>
-  </li>
-  <li>Open the *Skeleton.java file and add the functionality of your service
-    to the generated methods.</li>
-  <li>Build a service using Ant by typing ant jar.server</li>
-  <li>Deploy the service by copying the build/lib/*.aar file to
-    &lt;J2EE_HOME&gt;/webapps/axis2/WEB-INF/services</li>
-  <li>Check http://&lt;server&gt;:&lt;port&gt;/axis2/services/listServices to
-    make sure the service has been properly deployed</li>
-</ol>
-
-<p><b>The long story:</b></p>
-
-<p>As was the case in generating clients, you will need the <a
-href="http://ws.apache.org/axis2/download/1_1/download.cgi#std-bin">Axis2
-Standard Distribution</a>, because the <a
-href="http://ws.apache.org/axis2/download/1_1/download.cgi#war">Axis2 War
-Distribution</a> does not include the WSDL2Java utility. Once you've got it
-downloaded and unpacked, make sure that you set the AXIS2_HOME variable to
-point to the location in which you've unpacked it.</p>
-
-<p>Now you are ready to generate the actual service. To keep things neat,
-create a new directory and change to it. The WSDL file is the same one
-referenced in <a href="userguide-creatingclients#generating.xhtml">Generating
-Clients</a> and includes four operations: NoParameters,
-TwoWayOneParameterEcho, MultipleParametersAddItem, and DoInOnly. To generate
-the service, use the WSDL2Java utility, as in Code Listing 14.</p>
-
-<h3>Code Listing 14 - Using the WSDL2Java Utility to Generate the Service</h3>
-<pre>java org.apache.axis2.wsdl.WSDL2Java -uri 
-file:///C:/apps/axis2/samples/zSample/Axis2UserGuide.wsdl -p 
-org.apache.axis2.axis2userguide -d adb -s -wv 1.1 -ss -sd</pre>
-
-<p>This statement tells the utility you want to create a service out of the
-operations in the file Axis2UserGuide.wsdl, and that the Java classes
-generated should be in the org.apache.axis2.axis2userguide package (-p). (You
-should see the appropriate directories created.) It also indicates that you
-want to use the Axis2 DataBinding Framework, or ADB (-d), to generate only
-synchronous, or blocking code (-s), and to generate server-side code (-ss) as
-opposed to a client, including the services.xml service descriptor file
-(-sd). It also specifies version 1.1 for the WSDL file (-wv). 
-</p>
-
-<p>At this point, you should see three new items in your chosen directory:
-the build.xml file, which includes instructions for Ant, the src directory,
-which includes all of the generated classes and stubs, the resources
-directory, which includes a regenerated version of the WSDL, and the
-services.xml file, which ultimately controls the service's behavior.</p>
-
-<p>You can compile the service at this point, but it doesn't actually do
-anything yet. You can solve that problem by opening the
-src\org\apache\axis2\axis2userguide\Axis2UserGuideServiceSkeleton.java file
-and either editing the code in bold -- make sure you manage parameter numbers
--- or replacing all of the code with the following in Code Listing 15.</p>
-
-<h3>Code Listing 15 - Compiling the Service</h3>
-<pre>/**
- * Axis2UserGuideServiceSkeleton.java
- *
- * This file was auto-generated from WSDL
- * by the Apache Axis2 version: SNAPSHOT Oct 15, 2006 (11:23:18 
-GMT+00:00)
- */
-package org.apache.axis2.axis2userguide;
-/**
- *  Axis2UserGuideServiceSkeleton java skeleton for the axisService
- */
-public class Axis2UserGuideServiceSkeleton {
-     
-         
-    /**
-     * Auto generated method signature
-         
-     * @param param7
-         
-    */
-    public  org.apache.axis2.axis2userguide.NoParametersResponse 
-NoParameters
-        (org.apache.axis2.axis2userguide.NoParametersRequest param7)
-         
-    {
-        <b>System.out.println(param7);
-
-        NoParametersResponse res =
-            new NoParametersResponse();
-
-        return res;</b>
-    }
-     
-         
-    /**
-     * Auto generated method signature
-         
-     * @param param9
-         
-    */
-    public  
-org.apache.axis2.axis2userguide.TwoWayOneParameterEchoResponse 
-TwoWayOneParameterEcho
-        (
-         org.apache.axis2.axis2userguide.TwoWayOneParameterEchoRequest 
-param9
-         )
-         
-    {
-        <b>System.out.println(param9.getEchoString());
-
-        TwoWayOneParameterEchoResponse res =
-            new TwoWayOneParameterEchoResponse();
-        
-        res.setEchoString(param9.getEchoString());
-
-        return res;</b>
-    }
-     
-         
-    /**
-     * Auto generated method signature
-         
-     * @param param11
-         
-    */
-    public  void DoInOnly
-        (
-         org.apache.axis2.axis2userguide.DoInOnlyRequest param11
-         )
-         
-    {
-        <b>System.out.println(param11.getMessageString());</b>
-    }
-     
-         
-    /**
-     * Auto generated method signature
-         
-     * @param param12
-         
-    */
-    public  
-org.apache.axis2.axis2userguide.MultipleParametersAddItemResponse 
-MultipleParametersAddItem
-        (
-         
-org.apache.axis2.axis2userguide.MultipleParametersAddItemRequest 
-param12
-         )
-         
-    {
-        <b>System.out.println(param12.getPrice());
-        System.out.println(param12.getItemId());
-        System.out.println(param12.getDescription());
-        System.out.println(param12.getItemName());
-
-        MultipleParametersAddItemResponse res =
-            new MultipleParametersAddItemResponse();
-        
-        res.setSuccessfulAdd(true);
-        res.setItemId(param12.getItemId());
-
-        return res;</b>
-    }
-     
-}</pre>
-
-<p>As in the case of generating clients, all of these classes, such as
-MultipleParametersAddItemRequest and TwoWayOneParameterEchoResponse, are
-generated by the utility, and can be found in the same directory as the
-skeleton file. They include methods such as setSuccessfulAdd(), which set the
-value of the content of an element in the response, and getItemName(), which
-retrieve the content of elements in the request.</p>
-
-<p>Save the file and compile it by typing: ant jar.server</p>
-
-<p>If all goes well, you should see the BUILD SUCCESSFUL message in your
-window, and the Axis2UserGuideService.aar file in the newly created build/lib
-directory.</p>
-
-<p><img alt="The BUILD SUCCESSFUL message in your window"
-src="images/fig05.jpg" /></p>
-
-<p>Now you need to deploy the service to the server. To do that, copy the
-Axis2UserGuideService.aar file to the WEB-INF/services directory of the
-application server. (You also have the option to use the administration
-tools. See the <a href="webadminguide.html">Web Administrator's Guide</a> for
-more information.)</p>
-
-<p>To verify that the service has been properly deployed, check the list of
-services at <a
-href="http://&lt;host&gt;:&lt;port&gt;/axis2/services/listServices">http://&lt;host&gt;:&lt;port&gt;/axis2/services/listServices</a>.</p>
-
-<p><img alt="Checking the list of services" src="images/fig06.jpg" /></p>
-
-<p>Now you should be able to access the service using any of the clients
-built in the <a href="userguide-creatingclients.html#generating">Generating
-Clients</a> document.</p>
-
-<p><strong>See Next Section</strong>- <a
-href="userguide-samples.html">Samples</a></p>
-</body>
-</html>
+<?xml version="1.0" encoding=""?>
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+  <meta http-equiv="content-type" content="" />
+  <title>Introducing Axis2</title>
+  <link href="../css/axis-docs.css" rel="stylesheet" type="text/css"
+  media="all" />
+</head>
+
+<body>
+<a name="buildservices"></a>
+
+<h1>Apache Axis2 User's Guide -Building Services</h1>
+
+<p>Now that you know how to use Axis2 to generate clients from WSDL, this
+section digs a little deeper, showing you how to create services, and how to
+create both services and clients "from scratch", so to speak.</p>
+<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"><strong>Building
+    Services</strong></a><br />
+
+    <ul>
+      <li><a
+        href="userguide-buildingservices.html#getcomfortable"><strong>Getting
+        Comfortable with Available Options</strong></a></li>
+      <li><a
+        href="userguide-buildingservices.html#createscratch"><strong>Creating
+        a service from scratch</strong></a></li>
+      <li><a
+        href="userguide-buildingservices.html#deploypojo"><strong>Deploying
+        Plain Old Java Objects</strong></a></li>
+      <li><a
+        href="userguide-buildingservices.html#deployrun"><strong>Deploying
+        and running an Axis2 service created from WSDL</strong></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>
+
+<p><a name="getcomfortable"></a></p>
+
+<h2>Getting Comfortable with Available Options</h2>
+
+<p>Axis2 provides a number of ways to create a service, such as:</p>
+<ul>
+  <li>Create a service and build it from scratch: In this case, you build
+    your service class to specifically access AXIOM OMElement objects, then
+    create the services.xml file and package it up for deployment.</li>
+  <li>Deploy Plain Old Java Objects (POJOs) as a service.</li>
+  <li>Generate the service from WSDL: Just as you can generate clients with
+    WSDL, you can generate the skeleton of a service.</li>
+</ul>
+
+<p>Let's look at these three options.</p>
+<a name="createscratch"></a>
+
+<h2>Creating a Service From Scratch</h2>
+
+<p>Creating a service from scratch is not the most convenient way to do it,
+but it does give you the most control. The process involves several steps.</p>
+
+<p><b>The short story:</b></p>
+<ol>
+  <li>Create the service class, with each operation represented by a method
+    that takes as its argument a org.apache.axiom.om.OMElement object. (An
+    OMElement is how the AXIs2 Object Model (AXIOM) represents an XML
+    element.)</li>
+  <li>Create the service descriptor, services.xml, which defines the class to
+    be used by the service and the appropriate message receivers.</li>
+  <li>Create the .aar file, with the classes in their proper locations based
+    on package and the services.xml file in the META-INF directory.</li>
+  <li>Deploy the .aar file by using the <a href="webadminguide.html">Web
+    Administration application</a> or by copying it to the Axis2 services
+    directory.</li>
+</ol>
+
+<p><b>The long story:</b></p>
+
+<p>Start by creating the service class, a plain Java class that uses classes
+from the Axis2 libraries (see Code Listing 8).</p>
+
+<h3>Code Listing 8-Creating the Service Class</h3>
+<pre>package org.apache.axis2.axis2userguide;
+
+import javax.xml.stream.XMLStreamException;
+import org.apache.axiom.om.OMAbstractFactory;
+import org.apache.axiom.om.OMElement;
+import org.apache.axiom.om.OMFactory;
+import org.apache.axiom.om.OMNamespace;
+
+public class SampleService {
+
+    public OMElement sayHello(OMElement element) 
+                             throws XMLStreamException {
+            element.build();
+            element.detach();
+
+            String rootName = element.getLocalName();
+            System.out.println("Reading "+rootName+" element");
+            
+            OMElement childElement = element.getFirstElement();
+            String personToGreet = childElement.getText();
+
+            OMFactory fac = OMAbstractFactory.getOMFactory();
+            OMNamespace omNs = fac.createOMNamespace(
+                    "http://example1.org/example1", "example1");
+            OMElement method = fac.createOMElement("sayHelloResponse", 
+omNs);
+            OMElement value = fac.createOMElement("greeting", omNs);
+            value.addChild(fac.createOMText(value, "Hello, 
+"+personToGreet));
+            method.addChild(value);
+
+            return method;
+        }
+
+     private void ping(){
+     }
+    
+}</pre>
+
+<p>Make sure to include Axis2 libraries in your class path when compiling the
+source.</p>
+
+<p>Axis2 uses AXIOM, or the AXIs Object Model, a DOM (Document Object Model)
+-like structure that is based on the StAX API ( Streaming API for XML).
+Methods that act as services must take as their argument an OMElement, which
+represents the payload of the incoming SOAP message. (An OMElement is just
+AXIOM's way of representing an XML element, like a DOM Element object.) In
+this case, you're extracting the contents of the first child of the payload
+element, adding text to it, and using it as content for the return OMElement.
+Unless this is an "in only" service, these methods must return an OMElement,
+because that becomes the payload of the return SOAP message.</p>
+
+<p>To turn this class into a service, create the service description file,
+services.xml, as in Code Listing 9.</p>
+
+<h3>Code Listing 9 - Create the Service Description</h3>
+<pre>&lt;service name="UserGuideSampleService"&gt;
+    &lt;description&gt;
+        This is a sample service created in the Axis2 User's Guide
+    &lt;/description&gt;
+
+    &lt;parameter name="ServiceClass" 
+locked="false"&gt;org.apache.axis2.axis2userguide.SampleService
+&lt;/parameter&gt;
+
+    &lt;operation name="sayHello"&gt;
+        &lt;messageReceiver 
+class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/&gt;
+    &lt;/operation&gt;
+    &lt;operation name="ping"&gt;
+        &lt;messageReceiver 
+class="org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver"/&gt;
+    &lt;/operation&gt;
+&lt;/service&gt;</pre>
+
+<p>This document defines the service, what it's called by the <a
+href="webadminguide.html">Web Administration Application</a>, and the class
+used to serve requests. For each operation, it defines the appropriate
+message receiver class.</p>
+
+<p>Create a new directory, META-INF, in the main directory for the class. (In
+this case, that's the same directory that contains the org directory) and
+place the services.xml file in it.</p>
+
+<p>Create the .aar file by typing: jar cvf SampleService.aar ./*</p>
+
+<p>Deploy the SampleService.aar file by using the <a
+href="webadminguide.html">Web Administration application</a> or by copying it
+to the Axis2 services directory.</p>
+
+<p>Now you can create a client class that accesses the service directly (see
+Code Listing 10).</p>
+
+<h3>Code Listing 10 - Create a Client Class that Accesses the Service
+Directly</h3>
+<pre>package org.apache.axis2.axis2userguide;
+
+import javax.xml.stream.XMLStreamException;
+import org.apache.axiom.om.OMAbstractFactory;
+import org.apache.axiom.om.OMElement;
+import org.apache.axiom.om.OMFactory;
+import org.apache.axiom.om.OMNamespace;
+import org.apache.axis2.addressing.EndpointReference;
+import org.apache.axis2.client.Options;
+import org.apache.axis2.Constants;
+import org.apache.axis2.client.ServiceClient;
+
+public class SampleClient {
+
+       private static EndpointReference targetEPR = 
+             new EndpointReference(
+               "http://localhost:8080/axis2/services/UserGuideSampleService");
+
+        public static OMElement greetUserPayload(String personToGreet) {
+            OMFactory fac = OMAbstractFactory.getOMFactory();
+            OMNamespace omNs = fac.createOMNamespace(
+                    "http://example1.org/example1", "example1");
+            OMElement method = fac.createOMElement("sayHello", omNs);
+            OMElement value = fac.createOMElement("personToGreet", 
+omNs);
+            value.addChild(fac.createOMText(value, personToGreet));
+            method.addChild(value);
+            return method;
+        }
+
+        public static void main(String[] args) {
+            try {
+                OMElement payload = 
+SampleClient.greetUserPayload("John");
+                Options options = new Options();
+                options.setTo(targetEPR);
+                
+options.setTransportInProtocol(Constants.TRANSPORT_HTTP);
+
+                ServiceClient sender = new ServiceClient();
+                sender.setOptions(options);
+                OMElement result = sender.sendReceive(payload);
+
+                String response = result.getFirstElement().getText();
+                System.out.println(response);
+
+            } catch (Exception e) { //(XMLStreamException e) {
+                System.out.println(e.toString());
+            }
+        }
+    
+}</pre>
+
+<p>This class uses the same technique of sending and receiving OMElements,
+but it's also important to note the use of the Options class. This class
+enables you to determine properties such as the transport used for the return
+message -- the transport used for the outgoing message can be inferred from
+the URL of the destination -- and the SOAP version to use. In addition to
+providing setter and getter methods of specific properties that affect how
+the client interacts with the service, the Options class enables you to
+create inheritance relationships between Options objects, so that if a
+property is not found in the current Options object used, the client can
+check the parent Options object of the current Options object.</p>
+
+<p>Compile and run the above SampleClient.java. Make sure to have all axis2
+libraries in your class path. If all has gone well, 'Hello, John' will be
+shown as the output in the console.</p>
+<a name="deploypojo"></a>
+
+<h2>Deploying Plain Old Java Objects (POJOs)</h2>
+
+<p>One very easy way to create a Web service is simply to deploy the Java
+objects that represent the service. Start with the class, shown in Code
+Listing 11.</p>
+
+<h3><b>Code Listing 11 - Creating the Class SampleService</b></h3>
+<pre>package org.apache.axis2.axis2userguide;
+
+public class SampleService {
+
+    public void doInOnly(){
+     return; 
+    } 
+     
+    public String noParameters(){
+      return "Hello";
+    } 
+    
+    public String twoWayOneParameterEcho(String toEcho){
+      return toEcho;
+    } 
+    
+    public boolean multipleParametersAdd(float price, int itemId, 
+                             String description, String itemName){
+      //Code to handle the logic
+	    	return true;
+    } 
+ 
+}</pre>
+
+<p>Next, you'll need to tell Axis2 what class corresponds to what Web service
+calls. Do this by creating a file called services.xml and adding the
+following shown in Code Listing 12.</p>
+
+<h3><b>Code Listing 12 - Creating services.xml</b></h3>
+<pre>&lt;service name="SampleService" scope="application"&gt;
+    &lt;description&gt;
+        Sample Service
+    &lt;/description&gt;
+    &lt;messageReceivers&gt;
+        &lt;messageReceiver 
+            mep="http://www.w3.org/2004/08/wsdl/in-only"
+    class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver"/&gt;
+        &lt;messageReceiver
+            mep="http://www.w3.org/2004/08/wsdl/in-out"
+    class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/&gt;
+    &lt;/messageReceivers&gt;
+    &lt;parameter name="ServiceClass"&gt;
+        org.apache.axis2.axis2userguide.SampleService
+    &lt;/parameter&gt;
+&lt;/service&gt;</pre>
+
+<p>This file makes the InOnly and InOut MEPs available to the service and
+tells Axis2 which class to call; operations must match method names. In other
+words, Axis2 automatically sends a call to the multipleParametersAdd
+operation to the
+org.apache.axis2.axis2userguide.SampleService.multipleParametersAdd()
+method.</p>
+
+<p>Now it's time to create the distribution. Arrange your files in the
+following directory structure (see Code Listing 13).</p>
+
+<h3><b>Code Listing 13- Create the Directory Structure for the
+Distribution</b></h3>
+<pre> - SampleService
+   - META-INF
+     - services.xml
+   - org
+     - apache
+       - axis2
+         - axis2userguide
+           - SampleService.class</pre>
+
+<p>Finally, deploy the service by copying the SampleService directory to the
+webapps/axis2/WEB-INF/services directory on the servlet engine. You can check to make
+sure that it's been properly deployed by checking <a
+href="http://&lt;host&gt;:&lt;port&gt;/axis2/services/listServices">http://&lt;host&gt;:&lt;port&gt;/axis2/services/listServices</a>.</p>
+<a name="deployrun"></a>
+
+<h2>Deploying and Running an Axis2 Service Created from WSDL</h2>
+
+<p>If you have a WSDL file, you can easily create and deploy a service based
+on that description. For example, to create a service based on the same WSDL
+file used in the <a href="userguide-creatingclients.html">clients section</a>
+of this document, you'd employ the following steps.</p>
+
+<p><b>The short story:</b></p>
+<ol>
+  <li>If you haven't already, <a
+    href="http://ws.apache.org/axis2/download/1_1/download.cgi#std-bin">download</a>
+    the Axis2 standard distribution.</li>
+  <li>Generate the skeleton using the WSDL2Java utility, as in: <br />
+
+    <pre>java org.apache.axis2.wsdl.WSDL2Java -uri file:///C:/apps/axis2/samples/zSample/Axis2UserGuide.wsdl -p org.apache.axis2.axis2userguide -d adb -s -wv 1.1 -ss -sd -ssi</pre>
+  </li>
+  <li>Open the *Skeleton.java file and add the functionality of your service
+    to the generated methods.</li>
+  <li>Build a service using Ant by typing ant jar.server</li>
+  <li>Deploy the service by copying the build/lib/*.aar file to
+    &lt;J2EE_HOME&gt;/webapps/axis2/WEB-INF/services</li>
+  <li>Check http://&lt;server&gt;:&lt;port&gt;/axis2/services/listServices to
+    make sure the service has been properly deployed</li>
+</ol>
+
+<p><b>The long story:</b></p>
+
+<p>As was the case in generating clients, you will need the <a
+href="http://ws.apache.org/axis2/download/1_1/download.cgi#std-bin">Axis2
+Standard Distribution</a>, because the <a
+href="http://ws.apache.org/axis2/download/1_1/download.cgi#war">Axis2 War
+Distribution</a> does not include the WSDL2Java utility. Once you've got it
+downloaded and unpacked, make sure that you set the AXIS2_HOME variable to
+point to the location in which you've unpacked it.</p>
+
+<p>Now you are ready to generate the actual service. To keep things neat,
+create a new directory and change to it. The WSDL file is the same one
+referenced in <a href="userguide-creatingclients#generating.xhtml">Generating
+Clients</a> and includes four operations: NoParameters,
+TwoWayOneParameterEcho, MultipleParametersAddItem, and DoInOnly. To generate
+the service, use the WSDL2Java utility, as in Code Listing 14.</p>
+
+<h3>Code Listing 14 - Using the WSDL2Java Utility to Generate the Service</h3>
+<pre>java org.apache.axis2.wsdl.WSDL2Java -uri 
+file:///C:/apps/axis2/samples/zSample/Axis2UserGuide.wsdl -p 
+org.apache.axis2.axis2userguide -d adb -s -wv 1.1 -ss -sd</pre>
+
+<p>This statement tells the utility you want to create a service out of the
+operations in the file Axis2UserGuide.wsdl, and that the Java classes
+generated should be in the org.apache.axis2.axis2userguide package (-p). (You
+should see the appropriate directories created.) It also indicates that you
+want to use the Axis2 DataBinding Framework, or ADB (-d), to generate only
+synchronous, or blocking code (-s), and to generate server-side code (-ss) as
+opposed to a client, including the services.xml service descriptor file
+(-sd). It also specifies version 1.1 for the WSDL file (-wv). 
+</p>
+
+<p>At this point, you should see three new items in your chosen directory:
+the build.xml file, which includes instructions for Ant, the src directory,
+which includes all of the generated classes and stubs, the resources
+directory, which includes a regenerated version of the WSDL, and the
+services.xml file, which ultimately controls the service's behavior.</p>
+
+<p>You can compile the service at this point, but it doesn't actually do
+anything yet. You can solve that problem by opening the
+src\org\apache\axis2\axis2userguide\Axis2UserGuideServiceSkeleton.java file
+and either editing the code in bold -- make sure you manage parameter numbers
+-- or replacing all of the code with the following in Code Listing 15.</p>
+
+<h3>Code Listing 15 - Compiling the Service</h3>
+<pre>/**
+ * Axis2UserGuideServiceSkeleton.java
+ *
+ * This file was auto-generated from WSDL
+ * by the Apache Axis2 version: SNAPSHOT Oct 15, 2006 (11:23:18 
+GMT+00:00)
+ */
+package org.apache.axis2.axis2userguide;
+/**
+ *  Axis2UserGuideServiceSkeleton java skeleton for the axisService
+ */
+public class Axis2UserGuideServiceSkeleton {
+     
+         
+    /**
+     * Auto generated method signature
+         
+     * @param param7
+         
+    */
+    public  org.apache.axis2.axis2userguide.NoParametersResponse 
+NoParameters
+        (org.apache.axis2.axis2userguide.NoParametersRequest param7)
+         
+    {
+        <b>System.out.println(param7);
+
+        NoParametersResponse res =
+            new NoParametersResponse();
+
+        return res;</b>
+    }
+     
+         
+    /**
+     * Auto generated method signature
+         
+     * @param param9
+         
+    */
+    public  
+org.apache.axis2.axis2userguide.TwoWayOneParameterEchoResponse 
+TwoWayOneParameterEcho
+        (
+         org.apache.axis2.axis2userguide.TwoWayOneParameterEchoRequest 
+param9
+         )
+         
+    {
+        <b>System.out.println(param9.getEchoString());
+
+        TwoWayOneParameterEchoResponse res =
+            new TwoWayOneParameterEchoResponse();
+        
+        res.setEchoString(param9.getEchoString());
+
+        return res;</b>
+    }
+     
+         
+    /**
+     * Auto generated method signature
+         
+     * @param param11
+         
+    */
+    public  void DoInOnly
+        (
+         org.apache.axis2.axis2userguide.DoInOnlyRequest param11
+         )
+         
+    {
+        <b>System.out.println(param11.getMessageString());</b>
+    }
+     
+         
+    /**
+     * Auto generated method signature
+         
+     * @param param12
+         
+    */
+    public  
+org.apache.axis2.axis2userguide.MultipleParametersAddItemResponse 
+MultipleParametersAddItem
+        (
+         
+org.apache.axis2.axis2userguide.MultipleParametersAddItemRequest 
+param12
+         )
+         
+    {
+        <b>System.out.println(param12.getPrice());
+        System.out.println(param12.getItemId());
+        System.out.println(param12.getDescription());
+        System.out.println(param12.getItemName());
+
+        MultipleParametersAddItemResponse res =
+            new MultipleParametersAddItemResponse();
+        
+        res.setSuccessfulAdd(true);
+        res.setItemId(param12.getItemId());
+
+        return res;</b>
+    }
+     
+}</pre>
+
+<p>As in the case of generating clients, all of these classes, such as
+MultipleParametersAddItemRequest and TwoWayOneParameterEchoResponse, are
+generated by the utility, and can be found in the same directory as the
+skeleton file. They include methods such as setSuccessfulAdd(), which set the
+value of the content of an element in the response, and getItemName(), which
+retrieve the content of elements in the request.</p>
+
+<p>Save the file and compile it by typing: ant jar.server</p>
+
+<p>If all goes well, you should see the BUILD SUCCESSFUL message in your
+window, and the Axis2UserGuideService.aar file in the newly created build/lib
+directory.</p>
+
+<p><img alt="The BUILD SUCCESSFUL message in your window"
+src="images/fig05.jpg" /></p>
+
+<p>Now you need to deploy the service to the server. To do that, copy the
+Axis2UserGuideService.aar file to the WEB-INF/services directory of the
+application server. (You also have the option to use the administration
+tools. See the <a href="webadminguide.html">Web Administrator's Guide</a> for
+more information.)</p>
+
+<p>To verify that the service has been properly deployed, check the list of
+services at <a
+href="http://&lt;host&gt;:&lt;port&gt;/axis2/services/listServices">http://&lt;host&gt;:&lt;port&gt;/axis2/services/listServices</a>.</p>
+
+<p><img alt="Checking the list of services" src="images/fig06.jpg" /></p>
+
+<p>Now you should be able to access the service using any of the clients
+built in the <a href="userguide-creatingclients.html#generating">Generating
+Clients</a> document.</p>
+
+<p><strong>See Next Section</strong>- <a
+href="userguide-samples.html">Samples</a></p>
+</body>
+</html>

Modified: webservices/axis2/trunk/java/xdocs/1_1/userguide-codelisting5.html
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/xdocs/1_1/userguide-codelisting5.html?view=diff&rev=488944&r1=488943&r2=488944
==============================================================================
--- webservices/axis2/trunk/java/xdocs/1_1/userguide-codelisting5.html (original)
+++ webservices/axis2/trunk/java/xdocs/1_1/userguide-codelisting5.html Tue Dec 19 23:40:48 2006
@@ -4,7 +4,7 @@
   <meta http-equiv="content-type" content="" />
   <title>Code Listing 4: Generating clients from the WSDL file</title>
   <link href="../css/axis-docs.css" rel="stylesheet" type="text/css"
-  media="all">
+  media="all" />
 </head>
 
 <body>

Modified: webservices/axis2/trunk/java/xdocs/1_1/userguide-codelisting7.html
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/xdocs/1_1/userguide-codelisting7.html?view=diff&rev=488944&r1=488943&r2=488944
==============================================================================
--- webservices/axis2/trunk/java/xdocs/1_1/userguide-codelisting7.html (original)
+++ webservices/axis2/trunk/java/xdocs/1_1/userguide-codelisting7.html Tue Dec 19 23:40:48 2006
@@ -4,7 +4,7 @@
   <meta http-equiv="content-type" content="" />
   <title>Code Listing 6: Client.java</title>
   <link href="../css/axis-docs.css" rel="stylesheet" type="text/css"
-  media="all">
+  media="all" />
 </head>
 
 <body>

Modified: webservices/axis2/trunk/java/xdocs/1_1/userguide-creatingclients-jibx.html
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/xdocs/1_1/userguide-creatingclients-jibx.html?view=diff&rev=488944&r1=488943&r2=488944
==============================================================================
--- webservices/axis2/trunk/java/xdocs/1_1/userguide-creatingclients-jibx.html (original)
+++ webservices/axis2/trunk/java/xdocs/1_1/userguide-creatingclients-jibx.html Tue Dec 19 23:40:48 2006
@@ -4,7 +4,7 @@
   <meta http-equiv="content-type" content="" />
   <title>Generating a Web Service Client using Axis2 and JiBX</title>
   <link href="../css/axis-docs.css" rel="stylesheet" type="text/css"
-  media="all">
+  media="all" />
 </head>
 
 <body>

Modified: webservices/axis2/trunk/java/xdocs/1_1/userguide-creatingclients-xmlbeans.html
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/xdocs/1_1/userguide-creatingclients-xmlbeans.html?view=diff&rev=488944&r1=488943&r2=488944
==============================================================================
--- webservices/axis2/trunk/java/xdocs/1_1/userguide-creatingclients-xmlbeans.html (original)
+++ webservices/axis2/trunk/java/xdocs/1_1/userguide-creatingclients-xmlbeans.html Tue Dec 19 23:40:48 2006
@@ -4,7 +4,7 @@
   <meta http-equiv="content-type" content="" />
   <title>Generating a Web Service Client using Axis2 and XmlBeans</title>
   <link href="../css/axis-docs.css" rel="stylesheet" type="text/css"
-  media="all">
+  media="all" />
 </head>
 
 <body>

Modified: webservices/axis2/trunk/java/xdocs/1_1/userguide-creatingclients.html
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/xdocs/1_1/userguide-creatingclients.html?view=diff&rev=488944&r1=488943&r2=488944
==============================================================================
--- webservices/axis2/trunk/java/xdocs/1_1/userguide-creatingclients.html (original)
+++ webservices/axis2/trunk/java/xdocs/1_1/userguide-creatingclients.html Tue Dec 19 23:40:48 2006
@@ -1,233 +1,233 @@
-<html lang="en">
-<head>
-  <meta http-equiv="content-type" content="">
-  <title>Apache Axis2 User's Guide- Creating Clients</title>
-  <link href="../css/axis-docs.css" rel="stylesheet" type="text/css"
-  media="all">
-</head>
-
-<body>
-<a name="createclients"></a>
-
-<h1>Apache Axis2 User's Guide - Creating Clients</h1>
-
-<p>When it comes to creating a Web service client, you can do it manually
-(see <a href="userguide-buildingservices.html">Building Services</a>), but in
-most cases you have a Web Service Description Language (WSDL) definition that
-describes the messages clients should send and expect to receive. Axis2
-provides several ways to use this definition to automatically generate a
-client.</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"><strong>Creating
-    Clients</strong></a><br>
-
-    <ul>
-      <li><a
-        href="userguide-creatingclients.html#choosingclient"><strong>Choosing
-        a Client Generation Method</strong></a></li>
-      <li><a
-        href="userguide-creatingclients.html#generating"><strong>Generating
-        Clients</strong></a></li>
-      <li><a href="userguide-creatingclients.html#adb"><strong>Axis Data
-        Binding (ADB)</strong></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 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>
-<a name="choosingclient"></a>
-
-<h2>Choosing a Client Generation Method</h2>
-
-<p>Axis2 gives you several options when it comes to mapping WSDL to objects
-in generating clients. Three of these options are Axis2 DataBinding
-Framework, XMLBeans, and JiBX databinding. All of these methods involve using
-databinding to create Java objects out of the XML structures used by the
-service, and each has its pros and cons. You can also generate XML in-out
-stubs that are not based on databinding.</p>
-
-<p>Axis2 Databinding Framework (ADB): ADB is probably the simplest method of
-generating an Axis2 client. In most cases, all of the pertinent classes are
-created as inner classes of a main stub class. ADB is very easy to use, but
-it does have limitations. It is not meant to be a full schema binding
-application, and has difficulty with structures such as XML Schema element
-extensions and restrictions.</p>
-
-<p>XMLBeans: Unlike ADB, XMLBeans is a fully functional schema compiler, so
-it doesn't carry the same limitations as ADB. It is, however, a bit more
-complicated to use than ADB. It generates a huge number of files, and the
-programming model, while certainly usable, is not as straightforward as
-ADB.</p>
-
-<p>JiBX: JiBX is a full databinding framework that actually provides not only
-WSDL-to-Java conversion, as covered in this document, but also Java-to-XML
-conversion. In some ways, JiBX provides the best of both worlds. JiBX is
-extremely flexible, enabling you to choose the classes that represent your
-entities, but it can be complicated to set up. On the other hand, once it is
-set up, actually using the generated code is as easy as using ADB.</p>
-
-<p>In the end, for simple structures, ADB will likely be enough for you. If,
-on the other hand, you need more power or flexibility, whether you choose
-XMLBeans or JiBX depends on how much power or flexibility you need and your
-tolerance for complexity.</p>
-<a name="generating"></a>
-
-<h2>Generating Clients</h2>
-
-<p>The process for generating and using a client varies slightly depending on
-the method of generation you choose. In all three cases in this document,
-clients are generated from the same WSDL file (see <a
-href="userguide-codelisting5.html">Code Listing 5</a>).</p>
-
-<p>Notice that the document defines four operations, DoInOnly, NoParameters,
-TwoWayOneParameterEcho, and MultipleParametersAddItem. Each of the clients
-will include methods for calling each of these operations.</p>
-
-<p>(You can get more information on WSDL at <a
-href="http://www.w3.org/2002/ws/desc/">http://www.w3.org/2002/ws/desc/</a>
-.)</p>
-<a name="adb"></a>
-
-<h2>Axis Data Binding (ADB)</h2>
-
-<p>To create a client using ADB, execute the following steps:</p>
-
-<p><b>The short story:</b></p>
-<ol>
-  <li>href="http://ws.apache.org/axis2/download/1_1/download.cgi#std-bin"If
-    you have not done it already, <a href="">download</a> and unpack the
-    Apache Axis2 Standard Distribution.</li>
-  <li>Create the client stub with the following command:
-    <pre>%AXIS2_HOME%\bin\WSDL2Java -uri Axis2UserGuide.wsdl -p org.apache.axis2.axis2userguide -d adb -s</pre>
-  </li>
-  <li>Create the client (for example, Client.java), a Java application that
-    uses the generated stub, and save it in the
-    org/apache/axis2/axis2userguide directory.</li>
-  <li>Build the client by typing ant jar.client.</li>
-  <li>Assuming you have a corresponding service, run the client by adding the
-    generated Axis2UserGuideService-test-client.jar file located in build/lib
-    to the classpath and typing:
-    <pre>java org.apache.axis2.axis2userguide.Client</pre>
-  </li>
-</ol>
-
-<p><b>The long story:</b></p>
-
-<p>If you have not done it already, <a
-href="http://ws.apache.org/axis2/download/1_1/download.cgi#std-bin">download</a>
-and unpack the Apache Axis2 Standard Distribution. The Axis2 War Distribution
-does not include the necessary utilities for generating code, such as
-WSDL2Java.</p>
-
-<p>In the ADB method of generating clients, all the functionality for the
-services are contained a single class called a stub. The stub contains inner
-classes corresponding to all of the necessary objects defined in the WSDL
-file, such as, in the case of this WSDL, DoInOnlyRequestMessage. Once you
-have the stub, you will be able to create a client by simply referring to
-these classes and their methods. To generate the client, issue the following
-command in Code Listing 6.</p>
-
-<h3><b>Code Listing 6 - Generating the Client</b></h3>
-<pre>%AXIS2_HOME%\bin\WSDL2Java -uri Axis2UserGuide.wsdl -p org.apache.axis2.axis2userguide -d adb -s</pre>
-
-<p>This command analyzes the WSDL file and creates the stub in the package
-org.apache.axis2.axis2userguide. The options specify that you want the ADB
-data binding method (-d), and synchronous, or blocking, methods (-s). In
-other words, when the client makes a In-Out call to the service, it will wait
-for a response before continuing.</p>
-
-<p>Once you run this command, you will see two new items in the directory.
-The first is the build.xml file, which contains the instructions for <a
-href="http://ant.apache.org/">Ant</a> to compile the generated classes. The
-second is the src directory, which contains the actual
-Axis2UserGuideServiceStub.java file. If you open this file, you will see a
-collection of inner classes for each of the items in the wsdl file. You'll
-also see a number of calls to the Axis2 client API, including those that use
-axiom to build and analyze the incoming and outgoing messages.</p>
-
-<p>Now you need a client to make use of this code. To create a client, create
-a new class and save it as Client.java in the org/apache/axis2/axis2userguide
-directory. It should contain the following code in <a
-href="userguide-codelisting7.html">Code Listing 7</a>.</p>
-
-<p>Notice that using the service is simply a matter of creating and
-populating the appropriate type of request using the names defined in the
-WSDL file, and then using the stub to actually send the request to the
-appropriate method. For example, to call the DoInOnly operation, you create a
-DoInOnlyRequest, use its setMessageString() method to set the contents of its
-messageString element, and pass it as an argument to stub.DoInOnly().</p>
-
-<p>To build the client, type: ant jar.client</p>
-
-<p>This action creates two new directories, build and test. The test
-directory will be empty, but the build directory contains two versions of the
-client. The first version, in the lib directory, is a jar file that contains
-the Client class and the stub. The second, in the classes directory, is just
-the raw classes.</p>
-
-<p>Make sure all of the jar files in the Axis2 lib directory are on the
-classpath.</p>
-
-<p>If you have a service corresponding to this client -- if you don't, check
-out the <a href="userguide-buildingservices.html">Building services</a>
-document -- you can run the client by adding the jar file to your classpath
-and typing: java org.apache.axis2.axis2userguide.Client</p>
-
-<p>You should see the response in a console window of your servlet container.
-It should look something like this:</p>
-
-<p><img alt="Response in a console window of your servlet container"
-src="images/fig03.jpg"><br clear="all">
-</p>
-
-<p>ADB is not your only option for generating web service clients. Other
-options include <a
-href="userguide-creatingclients-xmlbeans.html">XmlBeans</a>, <a
-href="userguide-creatingclients-jibx.html">JiBX</a>, JAXME and JAXBRI.</p>
-
-<p><strong>See Next Section</strong> -<a
-href="userguide-buildingservices.html#buildservices">Building Services</a></p>
-</body>
-</html>
+<html lang="en">
+<head>
+  <meta http-equiv="content-type" content="">
+  <title>Apache Axis2 User's Guide- Creating Clients</title>
+  <link href="../css/axis-docs.css" rel="stylesheet" type="text/css"
+  media="all" />
+</head>
+
+<body>
+<a name="createclients"></a>
+
+<h1>Apache Axis2 User's Guide - Creating Clients</h1>
+
+<p>When it comes to creating a Web service client, you can do it manually
+(see <a href="userguide-buildingservices.html">Building Services</a>), but in
+most cases you have a Web Service Description Language (WSDL) definition that
+describes the messages clients should send and expect to receive. Axis2
+provides several ways to use this definition to automatically generate a
+client.</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"><strong>Creating
+    Clients</strong></a><br>
+
+    <ul>
+      <li><a
+        href="userguide-creatingclients.html#choosingclient"><strong>Choosing
+        a Client Generation Method</strong></a></li>
+      <li><a
+        href="userguide-creatingclients.html#generating"><strong>Generating
+        Clients</strong></a></li>
+      <li><a href="userguide-creatingclients.html#adb"><strong>Axis Data
+        Binding (ADB)</strong></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 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>
+<a name="choosingclient"></a>
+
+<h2>Choosing a Client Generation Method</h2>
+
+<p>Axis2 gives you several options when it comes to mapping WSDL to objects
+in generating clients. Three of these options are Axis2 DataBinding
+Framework, XMLBeans, and JiBX databinding. All of these methods involve using
+databinding to create Java objects out of the XML structures used by the
+service, and each has its pros and cons. You can also generate XML in-out
+stubs that are not based on databinding.</p>
+
+<p>Axis2 Databinding Framework (ADB): ADB is probably the simplest method of
+generating an Axis2 client. In most cases, all of the pertinent classes are
+created as inner classes of a main stub class. ADB is very easy to use, but
+it does have limitations. It is not meant to be a full schema binding
+application, and has difficulty with structures such as XML Schema element
+extensions and restrictions.</p>
+
+<p>XMLBeans: Unlike ADB, XMLBeans is a fully functional schema compiler, so
+it doesn't carry the same limitations as ADB. It is, however, a bit more
+complicated to use than ADB. It generates a huge number of files, and the
+programming model, while certainly usable, is not as straightforward as
+ADB.</p>
+
+<p>JiBX: JiBX is a full databinding framework that actually provides not only
+WSDL-to-Java conversion, as covered in this document, but also Java-to-XML
+conversion. In some ways, JiBX provides the best of both worlds. JiBX is
+extremely flexible, enabling you to choose the classes that represent your
+entities, but it can be complicated to set up. On the other hand, once it is
+set up, actually using the generated code is as easy as using ADB.</p>
+
+<p>In the end, for simple structures, ADB will likely be enough for you. If,
+on the other hand, you need more power or flexibility, whether you choose
+XMLBeans or JiBX depends on how much power or flexibility you need and your
+tolerance for complexity.</p>
+<a name="generating"></a>
+
+<h2>Generating Clients</h2>
+
+<p>The process for generating and using a client varies slightly depending on
+the method of generation you choose. In all three cases in this document,
+clients are generated from the same WSDL file (see <a
+href="userguide-codelisting5.html">Code Listing 5</a>).</p>
+
+<p>Notice that the document defines four operations, DoInOnly, NoParameters,
+TwoWayOneParameterEcho, and MultipleParametersAddItem. Each of the clients
+will include methods for calling each of these operations.</p>
+
+<p>(You can get more information on WSDL at <a
+href="http://www.w3.org/2002/ws/desc/">http://www.w3.org/2002/ws/desc/</a>
+.)</p>
+<a name="adb"></a>
+
+<h2>Axis Data Binding (ADB)</h2>
+
+<p>To create a client using ADB, execute the following steps:</p>
+
+<p><b>The short story:</b></p>
+<ol>
+  <li>href="http://ws.apache.org/axis2/download/1_1/download.cgi#std-bin"If
+    you have not done it already, <a href="">download</a> and unpack the
+    Apache Axis2 Standard Distribution.</li>
+  <li>Create the client stub with the following command:
+    <pre>%AXIS2_HOME%\bin\WSDL2Java -uri Axis2UserGuide.wsdl -p org.apache.axis2.axis2userguide -d adb -s</pre>
+  </li>
+  <li>Create the client (for example, Client.java), a Java application that
+    uses the generated stub, and save it in the
+    org/apache/axis2/axis2userguide directory.</li>
+  <li>Build the client by typing ant jar.client.</li>
+  <li>Assuming you have a corresponding service, run the client by adding the
+    generated Axis2UserGuideService-test-client.jar file located in build/lib
+    to the classpath and typing:
+    <pre>java org.apache.axis2.axis2userguide.Client</pre>
+  </li>
+</ol>
+
+<p><b>The long story:</b></p>
+
+<p>If you have not done it already, <a
+href="http://ws.apache.org/axis2/download/1_1/download.cgi#std-bin">download</a>
+and unpack the Apache Axis2 Standard Distribution. The Axis2 War Distribution
+does not include the necessary utilities for generating code, such as
+WSDL2Java.</p>
+
+<p>In the ADB method of generating clients, all the functionality for the
+services are contained a single class called a stub. The stub contains inner
+classes corresponding to all of the necessary objects defined in the WSDL
+file, such as, in the case of this WSDL, DoInOnlyRequestMessage. Once you
+have the stub, you will be able to create a client by simply referring to
+these classes and their methods. To generate the client, issue the following
+command in Code Listing 6.</p>
+
+<h3><b>Code Listing 6 - Generating the Client</b></h3>
+<pre>%AXIS2_HOME%\bin\WSDL2Java -uri Axis2UserGuide.wsdl -p org.apache.axis2.axis2userguide -d adb -s</pre>
+
+<p>This command analyzes the WSDL file and creates the stub in the package
+org.apache.axis2.axis2userguide. The options specify that you want the ADB
+data binding method (-d), and synchronous, or blocking, methods (-s). In
+other words, when the client makes a In-Out call to the service, it will wait
+for a response before continuing.</p>
+
+<p>Once you run this command, you will see two new items in the directory.
+The first is the build.xml file, which contains the instructions for <a
+href="http://ant.apache.org/">Ant</a> to compile the generated classes. The
+second is the src directory, which contains the actual
+Axis2UserGuideServiceStub.java file. If you open this file, you will see a
+collection of inner classes for each of the items in the wsdl file. You'll
+also see a number of calls to the Axis2 client API, including those that use
+axiom to build and analyze the incoming and outgoing messages.</p>
+
+<p>Now you need a client to make use of this code. To create a client, create
+a new class and save it as Client.java in the org/apache/axis2/axis2userguide
+directory. It should contain the following code in <a
+href="userguide-codelisting7.html">Code Listing 7</a>.</p>
+
+<p>Notice that using the service is simply a matter of creating and
+populating the appropriate type of request using the names defined in the
+WSDL file, and then using the stub to actually send the request to the
+appropriate method. For example, to call the DoInOnly operation, you create a
+DoInOnlyRequest, use its setMessageString() method to set the contents of its
+messageString element, and pass it as an argument to stub.DoInOnly().</p>
+
+<p>To build the client, type: ant jar.client</p>
+
+<p>This action creates two new directories, build and test. The test
+directory will be empty, but the build directory contains two versions of the
+client. The first version, in the lib directory, is a jar file that contains
+the Client class and the stub. The second, in the classes directory, is just
+the raw classes.</p>
+
+<p>Make sure all of the jar files in the Axis2 lib directory are on the
+classpath.</p>
+
+<p>If you have a service corresponding to this client -- if you don't, check
+out the <a href="userguide-buildingservices.html">Building services</a>
+document -- you can run the client by adding the jar file to your classpath
+and typing: java org.apache.axis2.axis2userguide.Client</p>
+
+<p>You should see the response in a console window of your servlet container.
+It should look something like this:</p>
+
+<p><img alt="Response in a console window of your servlet container"
+src="images/fig03.jpg"><br clear="all">
+</p>
+
+<p>ADB is not your only option for generating web service clients. Other
+options include <a
+href="userguide-creatingclients-xmlbeans.html">XmlBeans</a>, <a
+href="userguide-creatingclients-jibx.html">JiBX</a>, JAXME and JAXBRI.</p>
+
+<p><strong>See Next Section</strong> -<a
+href="userguide-buildingservices.html#buildservices">Building Services</a></p>
+</body>
+</html>

Modified: webservices/axis2/trunk/java/xdocs/1_1/userguide-forfurtherstudy.html
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/xdocs/1_1/userguide-forfurtherstudy.html?view=diff&rev=488944&r1=488943&r2=488944
==============================================================================
--- webservices/axis2/trunk/java/xdocs/1_1/userguide-forfurtherstudy.html (original)
+++ webservices/axis2/trunk/java/xdocs/1_1/userguide-forfurtherstudy.html Tue Dec 19 23:40:48 2006
@@ -1,112 +1,112 @@
-<html lang="en">
-<head>
-  <meta http-equiv="content-type" content="">
-  <title>Apache Axis2 User's Guide-For Further Study</title>
-  <link href="../css/axis-docs.css" rel="stylesheet" type="text/css"
-  media="all">
-</head>
-
-<body>
-<a name="#forfurtherstudy" id="#forfurtherstudy"></a>
-
-<h1>Apache Axis2 User's Guide - For Further Study</h1>
-<!--<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 document
-hierarchy</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 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>
-<ul>
-<li><a href="userguide-samples.html#clients">Clients</a></li>
-<li><a href="userguide-samples.html#services">Services</a></li>
-<li><a href="userguide-samples.html#wsdl">Sample WSDL files</a></li>
-<li><a href="userguide-samples.html#others">Other Samples</a></li>
-</ul>
-</li>
-<li><a href="userguide-forfurtherstudy.html"><strong>For Further
-Study</strong></a></li>
-</ul>-->
-
-<h2>Resources</h2>
-
-<p>Axis2 Architecture-<a
-href="http://ws.apache.org/axis2/1_1/Axis2ArchitectureGuide.html">http://ws.apache.org/axis2/1_1/Axis2ArchitectureGuide.html</a></p>
-
-<p>XML processing with AXIOM-<a
-href="http://ws.apache.org/commons/axiom/OMTutorial.html">http://ws.apache.org/commons/axiom/OMTutorial.html</a></p>
-
-<p>RESTful Web Services-<a
-href="http://ws.apache.org/axis2/1_1/rest-ws.html">http://ws.apache.org/axis2/1_1/rest-ws.html</a></p>
-
-<p>TCP Transport-<a
-href="http://ws.apache.org/axis2/1_1/tcp-transport.html">http://ws.apache.org/axis2/1_1/tcp-transport.html</a></p>
-
-<p>Mail Transport-<a
-href="http://ws.apache.org/axis2/1_1/mail-transport.html">http://ws.apache.org/axis2/1_1/mail-transport.html</a></p>
-
-<p>HTTP Transports-<a
-href="http://ws.apache.org/axis2/1_1/http-transport.html">http://ws.apache.org/axis2/1_1/http-transport.html</a></p>
-
-<p>MTOM with Axis2-<a
-href="http://ws.apache.org/axis2/1_1/mtom-guide.html">http://ws.apache.org/axis2/1_1/mtom-guide.html</a></p>
-
-<p>Securing SOAP Messages with Apache Rampart- <a
-href="../modules/rampart/1_1/security-module.html">http://ws.apache.org/axis2/modules/rampart/1_1/security-module.html</a></p>
-
-<p>SOAPMonitor-<a
-href="http://ws.apache.org/axis2/1_1/soapmonitor-module.html">http://ws.apache.org/axis2/1_1/soapmonitor-module.html</a></p>
-
-<p>Apache Axis2 Advance User's Guide- <a
-href="adv-userguide.html">http://ws.apache.org/axis2/1_1/adv-userguide.html</a></p>
-</body>
-</html>
+<html lang="en">
+<head>
+  <meta http-equiv="content-type" content="">
+  <title>Apache Axis2 User's Guide-For Further Study</title>
+  <link href="../css/axis-docs.css" rel="stylesheet" type="text/css"
+  media="all" />
+</head>
+
+<body>
+<a name="#forfurtherstudy" id="#forfurtherstudy"></a>
+
+<h1>Apache Axis2 User's Guide - For Further Study</h1>
+<!--<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 document
+hierarchy</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 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>
+<ul>
+<li><a href="userguide-samples.html#clients">Clients</a></li>
+<li><a href="userguide-samples.html#services">Services</a></li>
+<li><a href="userguide-samples.html#wsdl">Sample WSDL files</a></li>
+<li><a href="userguide-samples.html#others">Other Samples</a></li>
+</ul>
+</li>
+<li><a href="userguide-forfurtherstudy.html"><strong>For Further
+Study</strong></a></li>
+</ul>-->
+
+<h2>Resources</h2>
+
+<p>Axis2 Architecture-<a
+href="http://ws.apache.org/axis2/1_1/Axis2ArchitectureGuide.html">http://ws.apache.org/axis2/1_1/Axis2ArchitectureGuide.html</a></p>
+
+<p>XML processing with AXIOM-<a
+href="http://ws.apache.org/commons/axiom/OMTutorial.html">http://ws.apache.org/commons/axiom/OMTutorial.html</a></p>
+
+<p>RESTful Web Services-<a
+href="http://ws.apache.org/axis2/1_1/rest-ws.html">http://ws.apache.org/axis2/1_1/rest-ws.html</a></p>
+
+<p>TCP Transport-<a
+href="http://ws.apache.org/axis2/1_1/tcp-transport.html">http://ws.apache.org/axis2/1_1/tcp-transport.html</a></p>
+
+<p>Mail Transport-<a
+href="http://ws.apache.org/axis2/1_1/mail-transport.html">http://ws.apache.org/axis2/1_1/mail-transport.html</a></p>
+
+<p>HTTP Transports-<a
+href="http://ws.apache.org/axis2/1_1/http-transport.html">http://ws.apache.org/axis2/1_1/http-transport.html</a></p>
+
+<p>MTOM with Axis2-<a
+href="http://ws.apache.org/axis2/1_1/mtom-guide.html">http://ws.apache.org/axis2/1_1/mtom-guide.html</a></p>
+
+<p>Securing SOAP Messages with Apache Rampart- <a
+href="../modules/rampart/1_1/security-module.html">http://ws.apache.org/axis2/modules/rampart/1_1/security-module.html</a></p>
+
+<p>SOAPMonitor-<a
+href="http://ws.apache.org/axis2/1_1/soapmonitor-module.html">http://ws.apache.org/axis2/1_1/soapmonitor-module.html</a></p>
+
+<p>Apache Axis2 Advance User's Guide- <a
+href="adv-userguide.html">http://ws.apache.org/axis2/1_1/adv-userguide.html</a></p>
+</body>
+</html>



---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org