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 na...@apache.org on 2008/08/25 20:10:09 UTC

svn commit: r688807 [15/17] - in /webservices/axis2/site/1_4_1: ./ adb/ adb/images/ images/ images/archi-guide/ images/userguide/ jibx/ src/

Added: webservices/axis2/site/1_4_1/userguide-codelisting7.html
URL: http://svn.apache.org/viewvc/webservices/axis2/site/1_4_1/userguide-codelisting7.html?rev=688807&view=auto
==============================================================================
--- webservices/axis2/site/1_4_1/userguide-codelisting7.html (added)
+++ webservices/axis2/site/1_4_1/userguide-codelisting7.html Mon Aug 25 11:10:04 2008
@@ -0,0 +1,414 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+
+
+
+
+
+
+
+
+
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <title>Apache Axis2 - </title>
+    <style type="text/css" media="all">
+      @import url("../css/maven-base.css");
+      @import url("../css/maven-theme.css");
+      @import url("../css/site.css");
+    </style>
+    <link rel="stylesheet" href="../css/print.css" type="text/css" media="print" />
+        <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
+      </head>
+  <body class="composite">
+    <div id="banner">
+                  <a href="../" id="bannerLeft">
+    
+                                    <img src="http://www.apache.org/images/asf_logo_wide.png" alt="" />
+    
+            </a>
+                          <span id="bannerRight">
+    
+                                            <img src="../../images/axis.jpg" alt="" />
+    
+            </span>
+            <div class="clear">
+        <hr/>
+      </div>
+    </div>
+    <div id="breadcrumbs">
+          
+  
+
+  
+    
+  
+  
+    
+            <div class="xleft">
+        Last Published: 2008-08-24
+                      </div>
+            <div class="xright">            <a href="../index.html">Axis2/Java</a>
+            |
+                <a href="../../c">Axis2/C</a>
+            |
+                <a href="../../..">Apache WS</a>
+            |
+                <a href="http://www.apache.org" class="externalLink">Apache</a>
+            
+  
+
+  
+    
+  
+  
+    
+  </div>
+      <div class="clear">
+        <hr/>
+      </div>
+    </div>
+    <div id="leftColumn">
+      <div id="navcolumn">
+           
+  
+
+  
+    
+  
+  
+    
+                   <h5>Axis2/Java</h5>
+            <ul>
+              
+    <li class="none">
+                    <a href="../index.html">Home</a>
+          </li>
+          </ul>
+              <h5>Downloads</h5>
+            <ul>
+              
+    <li class="none">
+                    <a href="../download.cgi">Releases</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../modules/index.html">Modules</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../tools/index.html">Tools</a>
+          </li>
+          </ul>
+              <h5>Documentation</h5>
+            <ul>
+              
+          
+              
+      
+            
+      
+            
+      
+            
+      
+            
+      
+            
+      
+            
+      
+            
+      
+            
+      
+              
+        <li class="expanded">
+                    <a href="../1_4_1/contents.html">Version 1.4.1</a>
+                  <ul>
+                  
+    <li class="none">
+                    <a href="../1_4_1/toc.html">Table of Contents</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1_4_1/installationguide.html">Installation Guide</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1_4_1/quickstartguide.html">QuickStart Guide</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1_4_1/userguide.html">User Guide</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1_4_1/jaxws-guide.html">JAXWS Guide</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1_4_1/pojoguide.html">POJO Guide</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1_4_1/spring.html">Spring Guide</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1_4_1/webadminguide.html">Web Administrator's Guide</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1_4_1/migration.html">Migration Guide (from Axis1)</a>
+          </li>
+              </ul>
+        </li>
+              
+    <li class="none">
+                    <a href="../1_4/contents.html">Version 1.4</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../1_3/contents.html">Version 1.3</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../1_2/contents.html">Version 1.2</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../1_1_1/contents.html">Version 1.1.1</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../1_1/contents.html">Version 1.1</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../1_0/index.html">Version 1.0</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../0_95/index.html">Version 0.95</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../0_94/index.html">Version 0.94</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../0_93/index.html">Version 0.93</a>
+          </li>
+          </ul>
+              <h5>Resources</h5>
+            <ul>
+              
+    <li class="none">
+                    <a href="../faq.html">FAQ</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../articles.html">Articles</a>
+          </li>
+              
+    <li class="none">
+                    <a href="http://wiki.apache.org/ws/FrontPage/Axis2/" class="externalLink">Wiki</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../refLib.html">Reference Library</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../../1_4_1/api/index.html">Online Java Docs</a>
+          </li>
+          </ul>
+              <h5>Get Involved</h5>
+            <ul>
+              
+    <li class="none">
+                    <a href="../overview.html">Overview</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../svn.html">Checkout the Source</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../mail-lists.html">Mailing Lists</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../release-process.html">Release Process</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../guidelines.html">Developer Guidelines</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../siteHowTo.html">Build the Site</a>
+          </li>
+          </ul>
+              <h5>Project Information</h5>
+            <ul>
+              
+    <li class="none">
+                    <a href="../team-list.html">Project Team</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../issue-tracking.html">Issue Tracking</a>
+          </li>
+              
+    <li class="none">
+                    <a href="http://svn.apache.org/viewcvs.cgi/webservices/axis2/trunk/?root=Apache-SVN" class="externalLink">Source Code</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../thanks.html">Acknowledgements</a>
+          </li>
+              
+    <li class="none">
+                    <a href="http://www.apache.org/licenses/LICENSE-2.0.html" class="externalLink">License</a>
+          </li>
+          </ul>
+                                           <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
+            <img alt="Built by Maven" src="../images/logos/maven-feather.png"></img>
+          </a>
+                       
+  
+
+  
+    
+  
+  
+    
+        </div>
+    </div>
+    <div id="bodyColumn">
+      <div id="contentBox">
+        <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head><meta name="generator" content="HTML Tidy for Windows (vers 14 June 2007), see www.w3.org"><meta http-equiv="content-type" content="">Code Listing 6: Client.java<link href="../css/axis-docs.css" rel="stylesheet" type="text/css" media="all"></head><h1>Code Listing 7- Client.java</h1><pre>
+package org.apache.axis2.axis2userguide;
+
+import org.apache.axis2.axis2userguide.Axis2UserGuideServiceStub.DoInOnlyRequest;
+import org.apache.axis2.axis2userguide.Axis2UserGuideServiceStub.TwoWayOneParameterEchoRequest;
+import org.apache.axis2.axis2userguide.Axis2UserGuideServiceStub.NoParametersRequest;
+import org.apache.axis2.axis2userguide.Axis2UserGuideServiceStub.MultipleParametersAddItemRequest;
+
+import org.apache.axis2.axis2userguide.Axis2UserGuideServiceStub.TwoWayOneParameterEchoResponse;
+import org.apache.axis2.axis2userguide.Axis2UserGuideServiceStub.NoParametersResponse;
+import org.apache.axis2.axis2userguide.Axis2UserGuideServiceStub.MultipleParametersAddItemResponse;
+
+public class Client{
+    public static void main(java.lang.String args[]){
+        try{
+            Axis2UserGuideServiceStub stub =
+                new Axis2UserGuideServiceStub
+                (&quot;http://localhost:8080/axis2/services/Axis2UserGuideService&quot;);
+
+            doInOnly(stub);
+            twoWayOneParameterEcho(stub);
+            noParameters(stub);
+            multipleParameters(stub);
+
+        } catch(Exception e){
+            e.printStackTrace();
+            System.out.println(&quot;\n\n\n&quot;);
+        }
+    }
+
+    /* do in only */
+    public static void doInOnly(Axis2UserGuideServiceStub stub){
+        try{
+            DoInOnlyRequest req = new DoInOnlyRequest();
+
+            req.setMessageString(&quot;An in only request&quot;);
+
+            stub.DoInOnly(req);
+            System.out.println(&quot;done&quot;);
+        } catch(Exception e){
+            e.printStackTrace();
+            System.out.println(&quot;\n\n\n&quot;);
+        }
+    }
+
+    /* two way call/receive */
+    public static void twoWayOneParameterEcho(Axis2UserGuideServiceStub stub){
+        try{
+            TwoWayOneParameterEchoRequest req = new TwoWayOneParameterEchoRequest();
+
+            req.setEchoString(&quot;echo! ... echo!&quot;);
+
+            TwoWayOneParameterEchoResponse res =
+                stub.TwoWayOneParameterEcho(req);
+
+            System.out.println(res.getEchoString());
+        } catch(Exception e){
+            e.printStackTrace();
+            System.out.println(&quot;\n\n\n&quot;);
+        }
+    }
+
+    /* No parameters */
+    public static void noParameters(Axis2UserGuideServiceStub stub){
+        try{
+            NoParametersRequest req = new NoParametersRequest();
+
+            System.out.println(stub.NoParameters(req));
+        } catch(Exception e){
+            e.printStackTrace();
+            System.out.println(&quot;\n\n\n&quot;);
+        }
+    }
+
+    /* multiple parameters */
+    public static void multipleParameters(Axis2UserGuideServiceStub stub){
+        try{
+            MultipleParametersAddItemRequest req =
+                new MultipleParametersAddItemRequest();
+
+            req.setPrice((float)1.99);
+            req.setItemId((int)23872983);
+            req.setDescription(&quot;Must have for cooking&quot;);
+            req.setItemName(&quot;flour&quot;);
+
+            MultipleParametersAddItemResponse res =
+                stub.MultipleParametersAddItem(req);
+
+            System.out.println(res.getSuccessfulAdd());
+            System.out.println(res.getItemId());
+        } catch(Exception e){
+            e.printStackTrace();
+            System.out.println(&quot;\n\n\n&quot;);
+        }
+    }
+}
+</pre></html>
+      </div>
+    </div>
+    <div class="clear">
+      <hr/>
+    </div>
+    <div id="footer">
+      <div class="xright">&#169;  
+          2004-2008
+    
+          Apache Software Foundation
+          
+  
+
+  
+    
+  
+  
+    
+  </div>
+      <div class="clear">
+        <hr/>
+      </div>
+    </div>
+  </body>
+</html>

Added: webservices/axis2/site/1_4_1/userguide-creatingclients-jibx.html
URL: http://svn.apache.org/viewvc/webservices/axis2/site/1_4_1/userguide-creatingclients-jibx.html?rev=688807&view=auto
==============================================================================
--- webservices/axis2/site/1_4_1/userguide-creatingclients-jibx.html (added)
+++ webservices/axis2/site/1_4_1/userguide-creatingclients-jibx.html Mon Aug 25 11:10:04 2008
@@ -0,0 +1,774 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+
+
+
+
+
+
+
+
+
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <title>Apache Axis2 - </title>
+    <style type="text/css" media="all">
+      @import url("../css/maven-base.css");
+      @import url("../css/maven-theme.css");
+      @import url("../css/site.css");
+    </style>
+    <link rel="stylesheet" href="../css/print.css" type="text/css" media="print" />
+        <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
+      </head>
+  <body class="composite">
+    <div id="banner">
+                  <a href="../" id="bannerLeft">
+    
+                                    <img src="http://www.apache.org/images/asf_logo_wide.png" alt="" />
+    
+            </a>
+                          <span id="bannerRight">
+    
+                                            <img src="../../images/axis.jpg" alt="" />
+    
+            </span>
+            <div class="clear">
+        <hr/>
+      </div>
+    </div>
+    <div id="breadcrumbs">
+          
+  
+
+  
+    
+  
+  
+    
+            <div class="xleft">
+        Last Published: 2008-08-24
+                      </div>
+            <div class="xright">            <a href="../index.html">Axis2/Java</a>
+            |
+                <a href="../../c">Axis2/C</a>
+            |
+                <a href="../../..">Apache WS</a>
+            |
+                <a href="http://www.apache.org" class="externalLink">Apache</a>
+            
+  
+
+  
+    
+  
+  
+    
+  </div>
+      <div class="clear">
+        <hr/>
+      </div>
+    </div>
+    <div id="leftColumn">
+      <div id="navcolumn">
+           
+  
+
+  
+    
+  
+  
+    
+                   <h5>Axis2/Java</h5>
+            <ul>
+              
+    <li class="none">
+                    <a href="../index.html">Home</a>
+          </li>
+          </ul>
+              <h5>Downloads</h5>
+            <ul>
+              
+    <li class="none">
+                    <a href="../download.cgi">Releases</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../modules/index.html">Modules</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../tools/index.html">Tools</a>
+          </li>
+          </ul>
+              <h5>Documentation</h5>
+            <ul>
+              
+          
+              
+      
+            
+      
+            
+      
+            
+      
+            
+      
+            
+      
+            
+      
+            
+      
+            
+      
+              
+        <li class="expanded">
+                    <a href="../1_4_1/contents.html">Version 1.4.1</a>
+                  <ul>
+                  
+    <li class="none">
+                    <a href="../1_4_1/toc.html">Table of Contents</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1_4_1/installationguide.html">Installation Guide</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1_4_1/quickstartguide.html">QuickStart Guide</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1_4_1/userguide.html">User Guide</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1_4_1/jaxws-guide.html">JAXWS Guide</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1_4_1/pojoguide.html">POJO Guide</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1_4_1/spring.html">Spring Guide</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1_4_1/webadminguide.html">Web Administrator's Guide</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1_4_1/migration.html">Migration Guide (from Axis1)</a>
+          </li>
+              </ul>
+        </li>
+              
+    <li class="none">
+                    <a href="../1_4/contents.html">Version 1.4</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../1_3/contents.html">Version 1.3</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../1_2/contents.html">Version 1.2</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../1_1_1/contents.html">Version 1.1.1</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../1_1/contents.html">Version 1.1</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../1_0/index.html">Version 1.0</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../0_95/index.html">Version 0.95</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../0_94/index.html">Version 0.94</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../0_93/index.html">Version 0.93</a>
+          </li>
+          </ul>
+              <h5>Resources</h5>
+            <ul>
+              
+    <li class="none">
+                    <a href="../faq.html">FAQ</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../articles.html">Articles</a>
+          </li>
+              
+    <li class="none">
+                    <a href="http://wiki.apache.org/ws/FrontPage/Axis2/" class="externalLink">Wiki</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../refLib.html">Reference Library</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../../1_4_1/api/index.html">Online Java Docs</a>
+          </li>
+          </ul>
+              <h5>Get Involved</h5>
+            <ul>
+              
+    <li class="none">
+                    <a href="../overview.html">Overview</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../svn.html">Checkout the Source</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../mail-lists.html">Mailing Lists</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../release-process.html">Release Process</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../guidelines.html">Developer Guidelines</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../siteHowTo.html">Build the Site</a>
+          </li>
+          </ul>
+              <h5>Project Information</h5>
+            <ul>
+              
+    <li class="none">
+                    <a href="../team-list.html">Project Team</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../issue-tracking.html">Issue Tracking</a>
+          </li>
+              
+    <li class="none">
+                    <a href="http://svn.apache.org/viewcvs.cgi/webservices/axis2/trunk/?root=Apache-SVN" class="externalLink">Source Code</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../thanks.html">Acknowledgements</a>
+          </li>
+              
+    <li class="none">
+                    <a href="http://www.apache.org/licenses/LICENSE-2.0.html" class="externalLink">License</a>
+          </li>
+          </ul>
+                                           <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
+            <img alt="Built by Maven" src="../images/logos/maven-feather.png"></img>
+          </a>
+                       
+  
+
+  
+    
+  
+  
+    
+        </div>
+    </div>
+    <div id="bodyColumn">
+      <div id="contentBox">
+        <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head><meta name="generator" content="HTML Tidy for Windows (vers 14 June 2007), see www.w3.org"><meta http-equiv="content-type" content="">Generating a Web Service Client using Axis2 and JiBX<link href="../css/axis-docs.css" rel="stylesheet" type="text/css" media="all"></head><h1 class="title">Generating a Web Service Client using Axis2 and
+JiBX</h1><p>This document explains how to generate a Web service client
+using Axis2 and JiBX data binding. The service has the following
+WSDL:</p>
+<p><b>Code Listing 1: The WSDL file</b></p>
+<pre>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
+&lt;wsdl:definitions
+   xmlns:apachesoap=&quot;http://xml.apache.org/xml-soap&quot;
+   xmlns:impl=&quot;http://apache.org/axis2/Axis2UserGuide&quot;
+   xmlns:intf=&quot;http://apache.org/axis2/Axis2UserGuide&quot;
+   xmlns:wsdl=&quot;http://schemas.xmlsoap.org/wsdl/&quot;
+   xmlns:wsdlsoap=&quot;http://schemas.xmlsoap.org/wsdl/soap/&quot;
+   xmlns:xsd=&quot;http://www.w3.org/2001/XMLSchema&quot;
+   targetNamespace=&quot;http://apache.org/axis2/Axis2UserGuide&quot;&gt;
+
+  &lt;wsdl:types&gt;
+    &lt;schema
+       elementFormDefault=&quot;qualified&quot;
+       targetNamespace=&quot;http://apache.org/axis2/Axis2UserGuide&quot;
+       xmlns=&quot;http://www.w3.org/2001/XMLSchema&quot;&gt;
+      
+      &lt;!-- ELEMENTS --&gt;
+      
+      &lt;element name=&quot;DoInOnlyRequest&quot;&gt;
+        &lt;complexType&gt;
+          &lt;sequence&gt;
+            &lt;element name=&quot;messageString&quot; type=&quot;xsd:string&quot;/&gt;
+          &lt;/sequence&gt;
+        &lt;/complexType&gt;
+      &lt;/element&gt;
+      
+      &lt;element name=&quot;TwoWayOneParameterEchoRequest&quot;&gt;
+        &lt;complexType&gt;
+          &lt;sequence&gt;
+            &lt;element name=&quot;echoString&quot; type=&quot;xsd:string&quot;/&gt;
+          &lt;/sequence&gt;
+        &lt;/complexType&gt;
+      &lt;/element&gt;
+      &lt;element name=&quot;TwoWayOneParameterEchoResponse&quot;&gt;
+        &lt;complexType&gt;
+          &lt;sequence&gt;
+            &lt;element name=&quot;echoString&quot; type=&quot;xsd:string&quot;/&gt;
+          &lt;/sequence&gt;
+        &lt;/complexType&gt;
+      &lt;/element&gt;
+      
+      &lt;element name=&quot;NoParametersRequest&quot;&gt;
+        &lt;complexType/&gt;
+      &lt;/element&gt;
+      &lt;element name=&quot;NoParametersResponse&quot;&gt;
+        &lt;complexType/&gt;
+      &lt;/element&gt;
+      
+      &lt;element name=&quot;MultipleParametersAddItemRequest&quot;&gt;
+        &lt;complexType&gt;
+          &lt;sequence&gt;
+            &lt;element name=&quot;itemId&quot; type=&quot;xsd:int&quot;/&gt;
+            &lt;element name=&quot;itemName&quot; type=&quot;xsd:string&quot;/&gt;
+            &lt;element name=&quot;price&quot; type=&quot;xsd:float&quot;/&gt;
+            &lt;element name=&quot;description&quot; type=&quot;xsd:string&quot;/&gt;
+          &lt;/sequence&gt;
+        &lt;/complexType&gt;
+      &lt;/element&gt;
+
+      &lt;element name=&quot;MultipleParametersAddItemResponse&quot;&gt;
+        &lt;complexType&gt;
+          &lt;sequence&gt;
+          &lt;element name=&quot;itemId&quot; type=&quot;xsd:int&quot;/&gt;
+          &lt;element name=&quot;successfulAdd&quot; type=&quot;xsd:boolean&quot;/&gt;
+          &lt;/sequence&gt;
+        &lt;/complexType&gt;
+      &lt;/element&gt;
+
+    &lt;/schema&gt;
+  &lt;/wsdl:types&gt;
+
+  
+  &lt;!-- MESSAGES --&gt;
+
+  &lt;wsdl:message name=&quot;DoInOnlyRequestMessage&quot;&gt;
+    &lt;wsdl:part name=&quot;input&quot; element=&quot;impl:DoInOnlyRequest&quot;/&gt;
+  &lt;/wsdl:message&gt;
+
+  &lt;wsdl:message name=&quot;TwoWayOneParameterEchoRequestMessage&quot;&gt;
+    &lt;wsdl:part name=&quot;input&quot; element=&quot;impl:TwoWayOneParameterEchoRequest&quot;/&gt;
+  &lt;/wsdl:message&gt;
+  &lt;wsdl:message name=&quot;TwoWayOneParameterEchoResponseMessage&quot;&gt;
+    &lt;wsdl:part name=&quot;output&quot; element=&quot;impl:TwoWayOneParameterEchoResponse&quot;/&gt;
+  &lt;/wsdl:message&gt;
+
+  &lt;wsdl:message name=&quot;NoParametersRequestMessage&quot;&gt;
+    &lt;wsdl:part name=&quot;input&quot; element=&quot;impl:NoParametersRequest&quot;/&gt;
+  &lt;/wsdl:message&gt;
+  &lt;wsdl:message name=&quot;NoParametersResponseMessage&quot;&gt;
+    &lt;wsdl:part name=&quot;output&quot; element=&quot;impl:NoParametersResponse&quot;/&gt;
+  &lt;/wsdl:message&gt;
+
+  &lt;wsdl:message name=&quot;MultipleParametersAddItemRequestMessage&quot;&gt;
+    &lt;wsdl:part name=&quot;input&quot; element=&quot;impl:MultipleParametersAddItemRequest&quot;/&gt;
+  &lt;/wsdl:message&gt;
+  &lt;wsdl:message name=&quot;MultipleParametersAddItemResponseMessage&quot;&gt;
+    &lt;wsdl:part name=&quot;output&quot; element=&quot;impl:MultipleParametersAddItemResponse&quot;/&gt;
+  &lt;/wsdl:message&gt;
+
+
+  &lt;!-- Port type (operations) --&gt;
+
+  &lt;wsdl:portType name=&quot;Axis2UserGuidePortType&quot;&gt;
+
+    &lt;wsdl:operation name=&quot;DoInOnly&quot; parameterOrder=&quot;input&quot;&gt;
+      &lt;wsdl:input name=&quot;DoInOnlyRequestMessage&quot;
+                  message=&quot;impl:DoInOnlyRequestMessage&quot;/&gt;
+    &lt;/wsdl:operation&gt;
+
+    &lt;wsdl:operation name=&quot;TwoWayOneParameterEcho&quot; parameterOrder=&quot;input&quot;&gt;
+      &lt;wsdl:input name=&quot;TwoWayOneParameterEchoRequestMessage&quot;
+                  message=&quot;impl:TwoWayOneParameterEchoRequestMessage&quot;/&gt;
+      &lt;wsdl:output name=&quot;TwoWayOneParameterEchoResponseMessage&quot;
+                  message=&quot;impl:TwoWayOneParameterEchoResponseMessage&quot;/&gt;
+    &lt;/wsdl:operation&gt;
+
+    &lt;wsdl:operation name=&quot;NoParameters&quot; parameterOrder=&quot;input&quot;&gt;
+      &lt;wsdl:input name=&quot;NoParametersRequestMessage&quot;
+                  message=&quot;impl:NoParametersRequestMessage&quot;/&gt;
+      &lt;wsdl:output name=&quot;NoParametersResponseMessage&quot;
+                   message=&quot;impl:NoParametersResponseMessage&quot;/&gt;
+    &lt;/wsdl:operation&gt;
+
+    &lt;wsdl:operation name=&quot;MultipleParametersAddItem&quot; parameterOrder=&quot;input&quot;&gt;
+      &lt;wsdl:input name=&quot;MultipleParametersAddItemRequestMessage&quot;
+                  message=&quot;impl:MultipleParametersAddItemRequestMessage&quot;/&gt;
+      &lt;wsdl:output name=&quot;MultipleParametersAddItemResponseMessage&quot;
+                  message=&quot;impl:MultipleParametersAddItemResponseMessage&quot;/&gt;
+    &lt;/wsdl:operation&gt;
+
+  &lt;/wsdl:portType&gt;
+
+
+  &lt;!-- BINDING (bind operations) --&gt;
+  &lt;wsdl:binding
+     name=&quot;Axis2UserGuideSoapBinding&quot;
+     type=&quot;impl:Axis2UserGuidePortType&quot;&gt;
+    &lt;wsdlsoap:binding style=&quot;document&quot; transport=&quot;http://schemas.xmlsoap.org/soap/http&quot;/&gt;
+
+    &lt;wsdl:operation name=&quot;DoInOnly&quot;&gt;
+      &lt;wsdlsoap:operation soapAction=&quot;DoInOnly&quot;/&gt;
+      &lt;wsdl:input&gt;
+        &lt;wsdlsoap:body use=&quot;literal&quot;/&gt;
+      &lt;/wsdl:input&gt;
+    &lt;/wsdl:operation&gt;
+
+    &lt;wsdl:operation name=&quot;TwoWayOneParameterEcho&quot;&gt;
+      &lt;wsdlsoap:operation soapAction=&quot;TwoWayOneParameterEcho&quot;/&gt;
+      &lt;wsdl:input&gt;
+        &lt;wsdlsoap:body use=&quot;literal&quot;/&gt;
+      &lt;/wsdl:input&gt;
+      &lt;wsdl:output&gt;
+        &lt;wsdlsoap:body use=&quot;literal&quot;/&gt;
+      &lt;/wsdl:output&gt;
+    &lt;/wsdl:operation&gt;
+
+    &lt;wsdl:operation name=&quot;NoParameters&quot;&gt;
+      &lt;wsdlsoap:operation soapAction=&quot;NoParameters&quot;/&gt;
+      &lt;wsdl:input&gt;
+        &lt;wsdlsoap:body use=&quot;literal&quot;/&gt;
+      &lt;/wsdl:input&gt;
+      &lt;wsdl:output&gt;
+        &lt;wsdlsoap:body use=&quot;literal&quot;/&gt;
+      &lt;/wsdl:output&gt;
+    &lt;/wsdl:operation&gt;
+
+    &lt;wsdl:operation name=&quot;MultipleParametersAddItem&quot;&gt;
+      &lt;wsdlsoap:operation soapAction=&quot;MultipleParametersAddItem&quot;/&gt;
+      &lt;wsdl:input&gt;
+        &lt;wsdlsoap:body use=&quot;literal&quot;/&gt;
+      &lt;/wsdl:input&gt;
+      &lt;wsdl:output&gt;
+        &lt;wsdlsoap:body use=&quot;literal&quot;/&gt;
+      &lt;/wsdl:output&gt;
+    &lt;/wsdl:operation&gt;
+  &lt;/wsdl:binding&gt;
+
+
+  &lt;!-- SERVICE --&gt;
+
+  &lt;wsdl:service name=&quot;Axis2UserGuideService&quot;&gt;
+    &lt;wsdl:port binding=&quot;impl:Axis2UserGuideSoapBinding&quot;
+               name=&quot;Axis2UserGuide&quot;&gt;
+      &lt;wsdlsoap:address location=&quot;http://localhost:8080/axis2/services/Axis2UserGuide&quot;/&gt;
+    &lt;/wsdl:port&gt;
+  &lt;/wsdl:service&gt;
+&lt;/wsdl:definitions&gt;
+</pre><p>Note that the document defines four operations, DoInOnly,
+NoParameters, TwoWayOneParameterEcho, and
+MultipleParametersAddItem. Each client will include methods for
+calling each of these operations.</p>
+<p>(You can get more information on WSDL at <a class="externalLink" href="http://www.w3.org/2002/ws/desc/">http://www.w3.org/2002/ws/desc/</a>
+.)</p>
+<a name="jibx"></a><h2>JiBX</h2><p>JiBX is not part of the Apache project, so in order to use it to
+generate your clients, you will need to do some setting up to start
+with. To generate your client, execute the following steps:</p>
+<p><b>The short story</b>:</p>
+<ol type="1"><li>Download the latest JiBX package (tested with JiBX v1.1) from
+<a class="externalLink" href="http://sourceforge.net/projects/jibx/">http://sourceforge.net/projects/jibx/</a>
+. Extract the zip file, and copy the JARs in the lib directory to
+the AXIS2_HOME/lib directory. (Delete the stax-api.jar file; it's
+superseded by the version that comes with Axis2.)</li>
+<li>Download <a class="externalLink" href="http://sourceforge.net/project/showfiles.php?group_id=69358&amp;package_id=122897">
+xsd2jibx version beta2a</a> from SourceForge. Create a directory
+called xsd2jibx in your working directory and extract the files
+into it. This utility does not work with the latest release (v1.1)
+of JiBX, so download <a class="externalLink" href="http://sourceforge.net/project/showfiles.php?group_id=69358&amp;package_id=68290">
+jibx-1.0RC1</a> from SourceForge. Extract the files from this
+archive and copy the *.jar files in the lib directory into the
+xsd2jibx/lib directory.</li>
+<li>Create a schema based on the data structures of your WSDL file
+and save it in your working directory.</li>
+<li>Make sure that only the xsd2jibx jar files are in the classpath
+and execute the following command to create the basic binding file:
+java -jar xsd2jibx\lib\xsd2jibx.jar Axis2UserGuide.xsd</li>
+<li>Copy the org directory to the src directory to place the
+generated classes into the project so that the compiler will see
+them.</li>
+<li>Remove the xsd2jibx-related *.jar files from your CLASSPATH and
+add the Axis2 .jar files back into it. Execute the following
+command to generate the stubs:
+<pre>
+%AXIS2_HOME%\bin\WSDL2Java -uri Axis2UserGuide.wsdl -p org.apache.axis2.axis2userguide -d jibx -Ebindingfile org\apache\axis2\axis2userguide\binding.xml -s
+</pre></li>
+<li>Create the client file in the org/apache/axis2/axis2userguide
+directory.</li>
+<li>Copy the org directory and all its contents to the src
+directory.</li>
+<li>Compile the first set of classes by typing:<code>ant
+jar.client</code></li>
+<li>Go to the build/classes directory and run the JiBX compiler:
+<pre>
+java -jar C:\apps\axis2\lib\jibx-bind.jar 
+..\..\org\apache\axis2\axis2userguide\binding.xml
+</pre></li>
+<li>Run Ant again to package the new auto-generated JiBX classes
+into the client jar by typing: <code>ant jar.client</code></li>
+<li>Add the build/lib/Axis2UserGuideService-test-client.jar file to
+the CLASSPATH and run the client by typing:
+<pre>
+java org.apache.axis2.axis2userguide.Client
+</pre></li>
+</ol>
+<p><b>The long story:</b></p>
+<p>To use JiBX to generate your client, you first need to use it in
+two different functions. You have to generate a binding file that
+maps objects to the XML elements, and then use JiBX to generate the
+stubs that your client will use. To generate a binding file, you'll
+need the xsd2jibx utility, which creates a binding file from an XML
+Schema document. Once you have the binding file, you can run JiBX
+to create the actual object. In order to do all that you'll need to
+have the appropriate versions of the JiBX software.</p>
+<p>Download the latest JiBX package (tested with JiBX v1.1) from
+<a class="externalLink" href="http://sourceforge.net/projects/jibx/">http://sourceforge.net/projects/jibx/</a>.
+Extract the zip file, and copy the JARs in the lib directory to the
+AXIS2_HOME/lib directory. (Delete the stax-api.jar file; it's
+superseded by the version that comes with Axis2.) These files
+pertain to the main JiBX application.</p>
+<p>Download <a class="externalLink" href="http://sourceforge.net/project/showfiles.php?group_id=69358&amp;package_id=122897">
+xsd2jibx version beta2a</a> from Sourceforge. Create a directory
+called xsd2jibx in your working directory and extract the files
+into it. Unfortunately, this utility does not work with the latest
+release of JiBX, so you will need to download <a class="externalLink" href="http://sourceforge.net/project/showfiles.php?group_id=69358&amp;package_id=68290">
+jibx-1.0RC1</a> from Sourceforge. Extract the files from this
+archive and place the *.jar files in the lib directory into the
+xsd2jibx/lib directory. This way, you can use them exclusively with
+the xsd2jibx utility.</p>
+<p>You'll need an XML schema from which to generate the binding
+file, which links XML elements to the Java classes. As defined in
+the sample WSDL file, its content should be as shown in Code
+Listing 2.</p>
+<p><b>Code Listing 2: XML Schema</b></p>
+<pre>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
+&lt;xsd:schema
+   elementFormDefault=&quot;qualified&quot;
+   targetNamespace=&quot;http://apache.org/axis2/Axis2UserGuide&quot;
+   xmlns=&quot;http://www.w3.org/2001/XMLSchema&quot;
+   xmlns:xsd=&quot;http://www.w3.org/2001/XMLSchema&quot;&gt;
+  
+  &lt;!-- ELEMENTS --&gt;
+  &lt;xsd:element name=&quot;DoInOnlyRequest&quot;&gt;
+    &lt;xsd:complexType&gt;
+      &lt;xsd:sequence&gt;
+        &lt;xsd:element name=&quot;messageString&quot; type=&quot;xsd:string&quot;/&gt;
+      &lt;/xsd:sequence&gt;
+    &lt;/xsd:complexType&gt;
+  &lt;/xsd:element&gt;
+  
+  &lt;xsd:element name=&quot;TwoWayOneParameterEchoRequest&quot;&gt;
+    &lt;xsd:complexType&gt;
+      &lt;xsd:sequence&gt;
+        &lt;xsd:element name=&quot;echoString&quot; type=&quot;xsd:string&quot;/&gt;
+      &lt;/xsd:sequence&gt;
+    &lt;/xsd:complexType&gt;
+  &lt;/xsd:element&gt;
+  &lt;xsd:element name=&quot;TwoWayOneParameterEchoResponse&quot;&gt;
+    &lt;xsd:complexType&gt;
+      &lt;xsd:sequence&gt;
+        &lt;xsd:element name=&quot;echoString&quot; type=&quot;xsd:string&quot;/&gt;
+      &lt;/xsd:sequence&gt;
+    &lt;/xsd:complexType&gt;
+  &lt;/xsd:element&gt;
+  
+  &lt;xsd:element name=&quot;NoParametersRequest&quot;&gt;
+    &lt;xsd:complexType/&gt;
+  &lt;/xsd:element&gt;
+  &lt;xsd:element name=&quot;NoParametersResponse&quot;&gt;
+    &lt;xsd:complexType/&gt;
+  &lt;/xsd:element&gt;
+  
+  &lt;xsd:element name=&quot;MultipleParametersAddItemRequest&quot;&gt;
+    &lt;xsd:complexType&gt;
+      &lt;xsd:sequence&gt;
+        &lt;xsd:element name=&quot;itemId&quot; type=&quot;xsd:int&quot;/&gt;
+        &lt;xsd:element name=&quot;itemName&quot; type=&quot;xsd:string&quot;/&gt;
+        &lt;xsd:element name=&quot;price&quot; type=&quot;xsd:float&quot;/&gt;
+        &lt;xsd:element name=&quot;description&quot; type=&quot;xsd:string&quot;/&gt;
+      &lt;/xsd:sequence&gt;
+    &lt;/xsd:complexType&gt;
+  &lt;/xsd:element&gt;
+
+  &lt;xsd:element name=&quot;MultipleParametersAddItemResponse&quot;&gt;
+    &lt;xsd:complexType&gt;
+      &lt;xsd:sequence&gt;
+        &lt;xsd:element name=&quot;itemId&quot; type=&quot;xsd:int&quot;/&gt;
+        &lt;xsd:element name=&quot;successfulAdd&quot; type=&quot;xsd:boolean&quot;/&gt;
+      &lt;/xsd:sequence&gt;
+    &lt;/xsd:complexType&gt;
+  &lt;/xsd:element&gt;
+
+&lt;/xsd:schema&gt;
+</pre><p>Save the above XML schema file as Axis2UserGuide.xsd.</p>
+<p>In order to map this schema into a JiBX binding file, you'll
+need to use the xsd2jibx utility. Clear your CLASSPATH and add only
+the .jar files in the xsd2jibx/lib directory. Execute the following
+command to create the basic binding file:</p>
+<pre>
+java -jar xsd2jibx\lib\xsd2jibx.jar Axis2UserGuide.xsd
+</pre><p>This operation creates the basic class files, as well as the
+mapping file, called binding.xml. You'll use this file to do the
+actual WSDL-to-Java conversion.</p>
+<p>Remove the xsd2jibx .jar files from your CLASSPATH and add the
+Axis2 .jar files back into it. Execute the command in Code Listing
+3 to generate the stubs.</p>
+<p><b>Code Listing 3: Generating the stubs</b></p>
+<pre>
+%AXIS2_HOME%\bin\WSDL2Java -uri Axis2UserGuide.wsdl -p org.apache.axis2.axis2userguide -d jibx -Ebindingfile org\apache\axis2\axis2userguide\binding.xml -s
+</pre><p>Create the client file, Client.java, in the
+org/apache/axis2/axis2userguide directory. Add the following code
+in Code Listing 4.</p>
+<p><b>Code Listing 4: Creating Client.java</b></p>
+<pre>
+package org.apache.axis2.axis2userguide;
+
+public class Client{
+    public static void main(java.lang.String args[]){
+        try{
+            Axis2UserGuideServiceStub stub =
+                new Axis2UserGuideServiceStub
+              (&quot;http://localhost:8080/axis2/services/Axis2UserGuideService&quot;);
+
+            doInOnly(stub);
+            twoWayOneParameterEcho(stub);
+            noParameters(stub);
+            multipleParameters(stub);
+        } catch(Exception e){
+            e.printStackTrace();
+            System.out.println(&quot;\n\n\n&quot;);
+        }
+    }
+
+    public static void doInOnly(Axis2UserGuideServiceStub stub){
+        try{
+            DoInOnlyRequest req = 
+                new DoInOnlyRequest();
+
+            req.setMessageString(&quot;fire and forget it!&quot;);
+
+            stub.DoInOnly(req);
+        } catch(Exception e){
+            e.printStackTrace();
+            System.out.println(&quot;\n\n\n&quot;);
+        }
+    }
+
+    public static void twoWayOneParameterEcho(Axis2UserGuideServiceStub stub){
+        try{
+            TwoWayOneParameterEchoRequest req = 
+                new TwoWayOneParameterEchoRequest();
+
+            req.setEchoString(&quot;echo! ... echo!&quot;);
+        System.out.println(stub.TwoWayOneParameterEcho(req).getEchoString());
+        } catch(Exception e){
+            e.printStackTrace();
+            System.out.println(&quot;\n\n\n&quot;);
+        }
+    }
+
+    public static void noParameters(Axis2UserGuideServiceStub stub){
+        try{
+            NoParametersRequest req =
+                new NoParametersRequest();
+
+            System.out.println(stub.NoParameters(req));
+        } catch(Exception e){
+            e.printStackTrace();
+            System.out.println(&quot;\n\n\n&quot;);
+        }
+    }
+
+    public static void multipleParameters(Axis2UserGuideServiceStub stub){
+        try{
+            MultipleParametersAddItemRequest req =
+                new MultipleParametersAddItemRequest();
+
+            req.setPrice((float)1.99);
+            req.setItemId((int)23872983);
+            req.setDescription(&quot;Must have for cooking&quot;);
+            req.setItemName(&quot;flour&quot;);
+
+            MultipleParametersAddItemResponse res =
+                stub.MultipleParametersAddItem(req);
+
+            System.out.println(res.getItemId());
+            System.out.println(res.getSuccessfulAdd());
+        } catch(Exception e){
+            e.printStackTrace();
+            System.out.println(&quot;\n\n\n&quot;);
+        }
+    }
+}
+</pre><p>Now it's time to compile the client. For the generated files to
+be found, they need to be in the source directory, so copy the org
+file to the src directory.</p>
+<p>Compile the first set of classes by typing: <code>ant
+jar.client</code></p>
+<p>This action compiles most of the available classes, but not
+everything. Fortunately, it does compile the classes needed by the
+JiBX compiler, so you can now generate the actual JiBX resources.
+Change to the build/classes directory and run the JiBX
+compiler:</p>
+<pre>
+java -jar C:\apps\axis2\lib\jibx-bind.jar ..\..\org\apache\axis2\axis2userguide\binding.xml
+</pre><p>Now that you have the new files in place, re-run the Ant task to
+generate the client: <code>ant jar.client</code></p>
+<p>This action adds all the appropriate files to the
+build/lib/Axis2UserGuideService-test-client.jar file, so add that
+.jar file to your CLASSPATH and run the client by typing: java
+org.apache.axis2.axis2userguide.Client</p>
+</html>
+      </div>
+    </div>
+    <div class="clear">
+      <hr/>
+    </div>
+    <div id="footer">
+      <div class="xright">&#169;  
+          2004-2008
+    
+          Apache Software Foundation
+          
+  
+
+  
+    
+  
+  
+    
+  </div>
+      <div class="clear">
+        <hr/>
+      </div>
+    </div>
+  </body>
+</html>

Added: webservices/axis2/site/1_4_1/userguide-creatingclients-xmlbeans.html
URL: http://svn.apache.org/viewvc/webservices/axis2/site/1_4_1/userguide-creatingclients-xmlbeans.html?rev=688807&view=auto
==============================================================================
--- webservices/axis2/site/1_4_1/userguide-creatingclients-xmlbeans.html (added)
+++ webservices/axis2/site/1_4_1/userguide-creatingclients-xmlbeans.html Mon Aug 25 11:10:04 2008
@@ -0,0 +1,698 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+
+
+
+
+
+
+
+
+
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <title>Apache Axis2 - </title>
+    <style type="text/css" media="all">
+      @import url("../css/maven-base.css");
+      @import url("../css/maven-theme.css");
+      @import url("../css/site.css");
+    </style>
+    <link rel="stylesheet" href="../css/print.css" type="text/css" media="print" />
+        <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
+      </head>
+  <body class="composite">
+    <div id="banner">
+                  <a href="../" id="bannerLeft">
+    
+                                    <img src="http://www.apache.org/images/asf_logo_wide.png" alt="" />
+    
+            </a>
+                          <span id="bannerRight">
+    
+                                            <img src="../../images/axis.jpg" alt="" />
+    
+            </span>
+            <div class="clear">
+        <hr/>
+      </div>
+    </div>
+    <div id="breadcrumbs">
+          
+  
+
+  
+    
+  
+  
+    
+            <div class="xleft">
+        Last Published: 2008-08-24
+                      </div>
+            <div class="xright">            <a href="../index.html">Axis2/Java</a>
+            |
+                <a href="../../c">Axis2/C</a>
+            |
+                <a href="../../..">Apache WS</a>
+            |
+                <a href="http://www.apache.org" class="externalLink">Apache</a>
+            
+  
+
+  
+    
+  
+  
+    
+  </div>
+      <div class="clear">
+        <hr/>
+      </div>
+    </div>
+    <div id="leftColumn">
+      <div id="navcolumn">
+           
+  
+
+  
+    
+  
+  
+    
+                   <h5>Axis2/Java</h5>
+            <ul>
+              
+    <li class="none">
+                    <a href="../index.html">Home</a>
+          </li>
+          </ul>
+              <h5>Downloads</h5>
+            <ul>
+              
+    <li class="none">
+                    <a href="../download.cgi">Releases</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../modules/index.html">Modules</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../tools/index.html">Tools</a>
+          </li>
+          </ul>
+              <h5>Documentation</h5>
+            <ul>
+              
+          
+              
+      
+            
+      
+            
+      
+            
+      
+            
+      
+            
+      
+            
+      
+            
+      
+            
+      
+              
+        <li class="expanded">
+                    <a href="../1_4_1/contents.html">Version 1.4.1</a>
+                  <ul>
+                  
+    <li class="none">
+                    <a href="../1_4_1/toc.html">Table of Contents</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1_4_1/installationguide.html">Installation Guide</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1_4_1/quickstartguide.html">QuickStart Guide</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1_4_1/userguide.html">User Guide</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1_4_1/jaxws-guide.html">JAXWS Guide</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1_4_1/pojoguide.html">POJO Guide</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1_4_1/spring.html">Spring Guide</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1_4_1/webadminguide.html">Web Administrator's Guide</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1_4_1/migration.html">Migration Guide (from Axis1)</a>
+          </li>
+              </ul>
+        </li>
+              
+    <li class="none">
+                    <a href="../1_4/contents.html">Version 1.4</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../1_3/contents.html">Version 1.3</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../1_2/contents.html">Version 1.2</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../1_1_1/contents.html">Version 1.1.1</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../1_1/contents.html">Version 1.1</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../1_0/index.html">Version 1.0</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../0_95/index.html">Version 0.95</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../0_94/index.html">Version 0.94</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../0_93/index.html">Version 0.93</a>
+          </li>
+          </ul>
+              <h5>Resources</h5>
+            <ul>
+              
+    <li class="none">
+                    <a href="../faq.html">FAQ</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../articles.html">Articles</a>
+          </li>
+              
+    <li class="none">
+                    <a href="http://wiki.apache.org/ws/FrontPage/Axis2/" class="externalLink">Wiki</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../refLib.html">Reference Library</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../../1_4_1/api/index.html">Online Java Docs</a>
+          </li>
+          </ul>
+              <h5>Get Involved</h5>
+            <ul>
+              
+    <li class="none">
+                    <a href="../overview.html">Overview</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../svn.html">Checkout the Source</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../mail-lists.html">Mailing Lists</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../release-process.html">Release Process</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../guidelines.html">Developer Guidelines</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../siteHowTo.html">Build the Site</a>
+          </li>
+          </ul>
+              <h5>Project Information</h5>
+            <ul>
+              
+    <li class="none">
+                    <a href="../team-list.html">Project Team</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../issue-tracking.html">Issue Tracking</a>
+          </li>
+              
+    <li class="none">
+                    <a href="http://svn.apache.org/viewcvs.cgi/webservices/axis2/trunk/?root=Apache-SVN" class="externalLink">Source Code</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../thanks.html">Acknowledgements</a>
+          </li>
+              
+    <li class="none">
+                    <a href="http://www.apache.org/licenses/LICENSE-2.0.html" class="externalLink">License</a>
+          </li>
+          </ul>
+                                           <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
+            <img alt="Built by Maven" src="../images/logos/maven-feather.png"></img>
+          </a>
+                       
+  
+
+  
+    
+  
+  
+    
+        </div>
+    </div>
+    <div id="bodyColumn">
+      <div id="contentBox">
+        <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head><meta name="generator" content="HTML Tidy for Windows (vers 14 June 2007), see www.w3.org"><meta http-equiv="content-type" content="">Generating a Web Service Client using Axis2 and
+XmlBeans<link href="../css/axis-docs.css" rel="stylesheet" type="text/css" media="all"></head><h1 class="title">Generating a Web Service Client using Apache
+Axis2 and XMLBeans</h1><p>This document explains how to generate a Web service client
+using Apache Axis2 and XMLBeans data binding. The service has the
+following WSDL:</p>
+<p><b>Code Listing 1: The WSDL file</b></p>
+<pre>
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
+&lt;wsdl:definitions
+   xmlns:apachesoap=&quot;http://xml.apache.org/xml-soap&quot;
+   xmlns:impl=&quot;http://apache.org/axis2/Axis2UserGuide&quot;
+   xmlns:intf=&quot;http://apache.org/axis2/Axis2UserGuide&quot;
+   xmlns:wsdl=&quot;http://schemas.xmlsoap.org/wsdl/&quot;
+   xmlns:wsdlsoap=&quot;http://schemas.xmlsoap.org/wsdl/soap/&quot;
+   xmlns:xsd=&quot;http://www.w3.org/2001/XMLSchema&quot;
+   targetNamespace=&quot;http://apache.org/axis2/Axis2UserGuide&quot;&gt;
+
+  &lt;wsdl:types&gt;
+    &lt;schema
+       elementFormDefault=&quot;qualified&quot;
+       targetNamespace=&quot;http://apache.org/axis2/Axis2UserGuide&quot;
+       xmlns=&quot;http://www.w3.org/2001/XMLSchema&quot;&gt;
+      
+      &lt;!-- ELEMENTS --&gt;
+      
+      &lt;element name=&quot;DoInOnlyRequest&quot;&gt;
+        &lt;complexType&gt;
+          &lt;sequence&gt;
+            &lt;element name=&quot;messageString&quot; type=&quot;xsd:string&quot;/&gt;
+          &lt;/sequence&gt;
+        &lt;/complexType&gt;
+      &lt;/element&gt;
+      
+      &lt;element name=&quot;TwoWayOneParameterEchoRequest&quot;&gt;
+        &lt;complexType&gt;
+          &lt;sequence&gt;
+            &lt;element name=&quot;echoString&quot; type=&quot;xsd:string&quot;/&gt;
+          &lt;/sequence&gt;
+        &lt;/complexType&gt;
+      &lt;/element&gt;
+      &lt;element name=&quot;TwoWayOneParameterEchoResponse&quot;&gt;
+        &lt;complexType&gt;
+          &lt;sequence&gt;
+            &lt;element name=&quot;echoString&quot; type=&quot;xsd:string&quot;/&gt;
+          &lt;/sequence&gt;
+        &lt;/complexType&gt;
+      &lt;/element&gt;
+      
+      &lt;element name=&quot;NoParametersRequest&quot;&gt;
+        &lt;complexType/&gt;
+      &lt;/element&gt;
+      &lt;element name=&quot;NoParametersResponse&quot;&gt;
+        &lt;complexType/&gt;
+      &lt;/element&gt;
+      
+      &lt;element name=&quot;MultipleParametersAddItemRequest&quot;&gt;
+        &lt;complexType&gt;
+          &lt;sequence&gt;
+            &lt;element name=&quot;itemId&quot; type=&quot;xsd:int&quot;/&gt;
+            &lt;element name=&quot;itemName&quot; type=&quot;xsd:string&quot;/&gt;
+            &lt;element name=&quot;price&quot; type=&quot;xsd:float&quot;/&gt;
+            &lt;element name=&quot;description&quot; type=&quot;xsd:string&quot;/&gt;
+          &lt;/sequence&gt;
+        &lt;/complexType&gt;
+      &lt;/element&gt;
+
+      &lt;element name=&quot;MultipleParametersAddItemResponse&quot;&gt;
+        &lt;complexType&gt;
+          &lt;sequence&gt;
+          &lt;element name=&quot;itemId&quot; type=&quot;xsd:int&quot;/&gt;
+          &lt;element name=&quot;successfulAdd&quot; type=&quot;xsd:boolean&quot;/&gt;
+          &lt;/sequence&gt;
+        &lt;/complexType&gt;
+      &lt;/element&gt;
+
+    &lt;/schema&gt;
+  &lt;/wsdl:types&gt;
+
+  
+  &lt;!-- MESSAGES --&gt;
+
+  &lt;wsdl:message name=&quot;DoInOnlyRequestMessage&quot;&gt;
+    &lt;wsdl:part name=&quot;input&quot; element=&quot;impl:DoInOnlyRequest&quot;/&gt;
+  &lt;/wsdl:message&gt;
+
+  &lt;wsdl:message name=&quot;TwoWayOneParameterEchoRequestMessage&quot;&gt;
+    &lt;wsdl:part name=&quot;input&quot; element=&quot;impl:TwoWayOneParameterEchoRequest&quot;/&gt;
+  &lt;/wsdl:message&gt;
+  &lt;wsdl:message name=&quot;TwoWayOneParameterEchoResponseMessage&quot;&gt;
+    &lt;wsdl:part name=&quot;output&quot; element=&quot;impl:TwoWayOneParameterEchoResponse&quot;/&gt;
+  &lt;/wsdl:message&gt;
+
+  &lt;wsdl:message name=&quot;NoParametersRequestMessage&quot;&gt;
+    &lt;wsdl:part name=&quot;input&quot; element=&quot;impl:NoParametersRequest&quot;/&gt;
+  &lt;/wsdl:message&gt;
+  &lt;wsdl:message name=&quot;NoParametersResponseMessage&quot;&gt;
+    &lt;wsdl:part name=&quot;output&quot; element=&quot;impl:NoParametersResponse&quot;/&gt;
+  &lt;/wsdl:message&gt;
+
+  &lt;wsdl:message name=&quot;MultipleParametersAddItemRequestMessage&quot;&gt;
+    &lt;wsdl:part name=&quot;input&quot; element=&quot;impl:MultipleParametersAddItemRequest&quot;/&gt;
+  &lt;/wsdl:message&gt;
+  &lt;wsdl:message name=&quot;MultipleParametersAddItemResponseMessage&quot;&gt;
+    &lt;wsdl:part name=&quot;output&quot; element=&quot;impl:MultipleParametersAddItemResponse&quot;/&gt;
+  &lt;/wsdl:message&gt;
+
+
+  &lt;!-- Port type (operations) --&gt;
+
+  &lt;wsdl:portType name=&quot;Axis2UserGuidePortType&quot;&gt;
+
+    &lt;wsdl:operation name=&quot;DoInOnly&quot; parameterOrder=&quot;input&quot;&gt;
+      &lt;wsdl:input name=&quot;DoInOnlyRequestMessage&quot;
+                  message=&quot;impl:DoInOnlyRequestMessage&quot;/&gt;
+    &lt;/wsdl:operation&gt;
+
+    &lt;wsdl:operation name=&quot;TwoWayOneParameterEcho&quot; parameterOrder=&quot;input&quot;&gt;
+      &lt;wsdl:input name=&quot;TwoWayOneParameterEchoRequestMessage&quot;
+                  message=&quot;impl:TwoWayOneParameterEchoRequestMessage&quot;/&gt;
+      &lt;wsdl:output name=&quot;TwoWayOneParameterEchoResponseMessage&quot;
+                  message=&quot;impl:TwoWayOneParameterEchoResponseMessage&quot;/&gt;
+    &lt;/wsdl:operation&gt;
+
+    &lt;wsdl:operation name=&quot;NoParameters&quot; parameterOrder=&quot;input&quot;&gt;
+      &lt;wsdl:input name=&quot;NoParametersRequestMessage&quot;
+                  message=&quot;impl:NoParametersRequestMessage&quot;/&gt;
+      &lt;wsdl:output name=&quot;NoParametersResponseMessage&quot;
+                   message=&quot;impl:NoParametersResponseMessage&quot;/&gt;
+    &lt;/wsdl:operation&gt;
+
+    &lt;wsdl:operation name=&quot;MultipleParametersAddItem&quot; parameterOrder=&quot;input&quot;&gt;
+      &lt;wsdl:input name=&quot;MultipleParametersAddItemRequestMessage&quot;
+                  message=&quot;impl:MultipleParametersAddItemRequestMessage&quot;/&gt;
+      &lt;wsdl:output name=&quot;MultipleParametersAddItemResponseMessage&quot;
+                  message=&quot;impl:MultipleParametersAddItemResponseMessage&quot;/&gt;
+    &lt;/wsdl:operation&gt;
+
+  &lt;/wsdl:portType&gt;
+
+
+  &lt;!-- BINDING (bind operations) --&gt;
+  &lt;wsdl:binding
+     name=&quot;Axis2UserGuideSoapBinding&quot;
+     type=&quot;impl:Axis2UserGuidePortType&quot;&gt;
+    &lt;wsdlsoap:binding style=&quot;document&quot; transport=&quot;http://schemas.xmlsoap.org/soap/http&quot;/&gt;
+
+    &lt;wsdl:operation name=&quot;DoInOnly&quot;&gt;
+      &lt;wsdlsoap:operation soapAction=&quot;DoInOnly&quot;/&gt;
+      &lt;wsdl:input&gt;
+        &lt;wsdlsoap:body use=&quot;literal&quot;/&gt;
+      &lt;/wsdl:input&gt;
+    &lt;/wsdl:operation&gt;
+
+    &lt;wsdl:operation name=&quot;TwoWayOneParameterEcho&quot;&gt;
+      &lt;wsdlsoap:operation soapAction=&quot;TwoWayOneParameterEcho&quot;/&gt;
+      &lt;wsdl:input&gt;
+        &lt;wsdlsoap:body use=&quot;literal&quot;/&gt;
+      &lt;/wsdl:input&gt;
+      &lt;wsdl:output&gt;
+        &lt;wsdlsoap:body use=&quot;literal&quot;/&gt;
+      &lt;/wsdl:output&gt;
+    &lt;/wsdl:operation&gt;
+
+    &lt;wsdl:operation name=&quot;NoParameters&quot;&gt;
+      &lt;wsdlsoap:operation soapAction=&quot;NoParameters&quot;/&gt;
+      &lt;wsdl:input&gt;
+        &lt;wsdlsoap:body use=&quot;literal&quot;/&gt;
+      &lt;/wsdl:input&gt;
+      &lt;wsdl:output&gt;
+        &lt;wsdlsoap:body use=&quot;literal&quot;/&gt;
+      &lt;/wsdl:output&gt;
+    &lt;/wsdl:operation&gt;
+
+    &lt;wsdl:operation name=&quot;MultipleParametersAddItem&quot;&gt;
+      &lt;wsdlsoap:operation soapAction=&quot;MultipleParametersAddItem&quot;/&gt;
+      &lt;wsdl:input&gt;
+        &lt;wsdlsoap:body use=&quot;literal&quot;/&gt;
+      &lt;/wsdl:input&gt;
+      &lt;wsdl:output&gt;
+        &lt;wsdlsoap:body use=&quot;literal&quot;/&gt;
+      &lt;/wsdl:output&gt;
+    &lt;/wsdl:operation&gt;
+  &lt;/wsdl:binding&gt;
+
+
+  &lt;!-- SERVICE --&gt;
+
+  &lt;wsdl:service name=&quot;Axis2UserGuideService&quot;&gt;
+    &lt;wsdl:port binding=&quot;impl:Axis2UserGuideSoapBinding&quot;
+               name=&quot;Axis2UserGuide&quot;&gt;
+      &lt;wsdlsoap:address location=&quot;http://localhost:8080/axis2/services/Axis2UserGuide&quot;/&gt;
+    &lt;/wsdl:port&gt;
+  &lt;/wsdl:service&gt;
+&lt;/wsdl:definitions&gt;
+</pre><p>Note that the document defines four operations, DoInOnly,
+NoParameters, TwoWayOneParameterEcho, and
+MultipleParametersAddItem. Each client will include methods for
+calling each of these operations.</p>
+<p>(For more information on WSDL, refer to: <a class="externalLink" href="http://www.w3.org/2002/ws/desc/">http://www.w3.org/2002/ws/desc/</a>
+.)</p>
+<p><b>The short story:</b></p>
+<ol type="1"><li><a class="externalLink" href="http://ws.apache.org/axis2/download/1_1/download.cgi#std-bin">Download</a>
+and unpack the Apache Axis2 Standard Distribution, if you have not
+done so already.</li>
+<li>Create the client classes with the following command:<br />
+<pre>
+%AXIS2_HOME%\bin\WSDL2Java -uri Axis2UserGuide.wsdl -p org.apache.axis2.axis2userguide -d xmlbeans -s
+</pre></li>
+<li>Create the client (for example, Client.java) and save it in the
+org/apache/axis2/axis2userguide directory.</li>
+<li>Build the client by typing: <code>ant jar.client.</code></li>
+<li>Make sure all the .jar files in the Axis2 lib directory are in
+the CLASSPATH.</li>
+<li>Assuming you have a corresponding service, run the client by
+adding the generated Axis2UserGuideService-test-client.jar file in
+build/lib to the CLASSPATH and type: <code>java
+org.apache.axis2.axis2userguide.Client</code></li>
+</ol>
+<p><b>The long story:</b></p>
+<p><a class="externalLink" href="http://ws.apache.org/axis2/download/1_1/download.cgi#std-bin">Download</a>
+and unpack the Apache Axis2 Standard Distribution, if you have not
+done so already. The <a class="externalLink" href="http://ws.apache.org/axis2/download/1_1/download.cgi#war">WAR
+distribution</a> does not include the necessary utilities for
+generating code, such as WSDL2Java.</p>
+<p>The XMLBeans method of generating clients, unlike ADB, creates
+individual classes for each object it must model. For example,
+generating a client for this WSDL file created 642 files and
+folders. A small number of these files are directly related to the
+actual client you're creating. The rest are related to the
+processing of XML, and include data bound objects for schemas,
+encodings, and other objects needed to process messages.</p>
+<p>To generate the client, issue the following command in Listing
+2.</p>
+<p><b>Code Listing 2. Generating the client</b></p>
+<pre>
+%AXIS2_HOME%\bin\WSDL2Java -uri Axis2UserGuide.wsdl -p org.apache.axis2.axis2userguide -d xmlbeans -s
+</pre><p>This command analyzes the WSDL file and creates the stubs in the
+package org.apache.axis2.axis2userguide. The options specify that
+you want the XMLBeans data binding method (-d), and synchronous or
+blocking methods (-s). In other words, when the client makes an
+In-Out call to the service, it will wait for a response before
+continuing.</p>
+<p>Once you run this command, you will see several new items in the
+directory. The first is the build.xml file, which contains the
+instructions for <a class="externalLink" href="http://ant.apache.org/">Ant</a> to
+compile the generated classes. The second is the src directory,
+which contains all the generated classes. The third is the
+resources directory, which includes files related to the actual
+data binding process.</p>
+<p>Now you need a client. 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 Listing 3.</p>
+<p><b>Code Listing 3: Client.java</b></p>
+<pre>
+package org.apache.axis2.axis2userguide;
+
+public class Client{
+    public static void main(java.lang.String args[]){
+        try{
+            Axis2UserGuideServiceStub stub =
+                new Axis2UserGuideServiceStub
+                (&quot;http://localhost:8080/axis2/services/Axis2UserGuideService&quot;);
+
+            doInOnly(stub);
+            twoWayOneParameterEcho(stub);
+            noParameters(stub);
+            multipleParameters(stub);
+
+        } catch(Exception e){
+            e.printStackTrace();
+            System.out.println(&quot;\n\n\n&quot;);
+        }
+    }
+
+    /* fire and forget */
+    public static void doInOnly(Axis2UserGuideServiceStub stub){
+        try{
+            DoInOnlyRequestDocument req =
+                DoInOnlyRequestDocument.Factory.newInstance();
+            DoInOnlyRequestDocument.DoInOnlyRequest data =
+                req.addNewDoInOnlyRequest();
+
+            data.setMessageString(&quot;fire and forget it!&quot;);
+
+            stub.DoInOnly(req);
+            System.out.println(&quot;done&quot;);
+        } catch(Exception e){
+            e.printStackTrace();
+            System.out.println(&quot;\n\n\n&quot;);
+        }
+    }
+
+    /* two way call/receive */
+    public static void twoWayOneParameterEcho(Axis2UserGuideServiceStub stub){
+        try{
+            TwoWayOneParameterEchoRequestDocument req =
+                TwoWayOneParameterEchoRequestDocument.Factory.newInstance();
+            TwoWayOneParameterEchoRequestDocument.TwoWayOneParameterEchoRequest data =
+                req.addNewTwoWayOneParameterEchoRequest();
+
+            data.setEchoString(&quot;echo! ... echo!&quot;);
+
+            TwoWayOneParameterEchoResponseDocument res =
+                stub.TwoWayOneParameterEcho(req);
+
+            System.out.println(res.getTwoWayOneParameterEchoResponse().getEchoString());
+        } catch(Exception e){
+            e.printStackTrace();
+            System.out.println(&quot;\n\n\n&quot;);
+        }
+    }
+
+    /* No parameters */
+    public static void noParameters(Axis2UserGuideServiceStub stub){
+        try{
+            NoParametersRequestDocument req =
+                NoParametersRequestDocument.Factory.newInstance();
+            NoParametersRequestDocument.NoParametersRequest data =
+                req.addNewNoParametersRequest();
+
+            System.out.println(stub.NoParameters(req));
+        } catch(Exception e){
+            e.printStackTrace();
+            System.out.println(&quot;\n\n\n&quot;);
+        }
+    }
+
+    /* multiple parameters */
+    public static void multipleParameters(Axis2UserGuideServiceStub stub){
+        try{
+            MultipleParametersAddItemRequestDocument req =
+                MultipleParametersAddItemRequestDocument.Factory.newInstance();
+            MultipleParametersAddItemRequestDocument.
+                MultipleParametersAddItemRequest data =
+                req.addNewMultipleParametersAddItemRequest();
+
+            data.setPrice((float)1.99);
+            data.setItemId((int)23872983);
+            data.setDescription(&quot;Must have for cooking&quot;);
+            data.setItemName(&quot;flour&quot;);
+
+            MultipleParametersAddItemResponseDocument res =
+                stub.MultipleParametersAddItem(req);
+            MultipleParametersAddItemResponseDocument.
+                MultipleParametersAddItemResponse dataRes =
+                res.getMultipleParametersAddItemResponse();
+
+            System.out.println(dataRes.getSuccessfulAdd());
+            System.out.println(dataRes.getItemId());
+        } catch(Exception e){
+            e.printStackTrace();
+            System.out.println(&quot;\n\n\n&quot;);
+        }
+    }
+}
+</pre><p>XMLBeans uses a different architecture from ADB. In XMLBeans,
+processing centers around documents, which are created through the
+use of factories, and which include inner classes for the objects
+they contain. The process is still the same -- you create a
+request, and send it using the stub -- the code is just a bit more
+complex.</p>
+<p>To build the client, type: <code>ant jar.client</code></p>
+<p>This action creates two new directories, build and test. The
+test directory will be empty, but the build directory will contain
+two versions of the client. The first version in the lib directory
+consists of two .jar files, one containing the Client class and the
+stub implementations, and the other containing the XMLBeans-related
+classes. The second version in the classes directory consists of
+just the raw classes.</p>
+<p>Make sure all 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 two .jar files to your
+classpath and typing:
+<code>java.org.apache.axis2.axis2userguide.Client</code></p>
+<p>You should see the response in a console window of your servlet
+container. It should look something like this:</p>
+<p><img src="images/fig04.jpg" alt="Response in a console window of your servlet container" /><br />
+</p>
+</html>
+      </div>
+    </div>
+    <div class="clear">
+      <hr/>
+    </div>
+    <div id="footer">
+      <div class="xright">&#169;  
+          2004-2008
+    
+          Apache Software Foundation
+          
+  
+
+  
+    
+  
+  
+    
+  </div>
+      <div class="clear">
+        <hr/>
+      </div>
+    </div>
+  </body>
+</html>

Added: webservices/axis2/site/1_4_1/userguide-creatingclients.html
URL: http://svn.apache.org/viewvc/webservices/axis2/site/1_4_1/userguide-creatingclients.html?rev=688807&view=auto
==============================================================================
--- webservices/axis2/site/1_4_1/userguide-creatingclients.html (added)
+++ webservices/axis2/site/1_4_1/userguide-creatingclients.html Mon Aug 25 11:10:04 2008
@@ -0,0 +1,500 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+
+
+
+
+
+
+
+
+
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <title>Apache Axis2 - </title>
+    <style type="text/css" media="all">
+      @import url("../css/maven-base.css");
+      @import url("../css/maven-theme.css");
+      @import url("../css/site.css");
+    </style>
+    <link rel="stylesheet" href="../css/print.css" type="text/css" media="print" />
+        <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
+      </head>
+  <body class="composite">
+    <div id="banner">
+                  <a href="../" id="bannerLeft">
+    
+                                    <img src="http://www.apache.org/images/asf_logo_wide.png" alt="" />
+    
+            </a>
+                          <span id="bannerRight">
+    
+                                            <img src="../../images/axis.jpg" alt="" />
+    
+            </span>
+            <div class="clear">
+        <hr/>
+      </div>
+    </div>
+    <div id="breadcrumbs">
+          
+  
+
+  
+    
+  
+  
+    
+            <div class="xleft">
+        Last Published: 2008-08-24
+                      </div>
+            <div class="xright">            <a href="../index.html">Axis2/Java</a>
+            |
+                <a href="../../c">Axis2/C</a>
+            |
+                <a href="../../..">Apache WS</a>
+            |
+                <a href="http://www.apache.org" class="externalLink">Apache</a>
+            
+  
+
+  
+    
+  
+  
+    
+  </div>
+      <div class="clear">
+        <hr/>
+      </div>
+    </div>
+    <div id="leftColumn">
+      <div id="navcolumn">
+           
+  
+
+  
+    
+  
+  
+    
+                   <h5>Axis2/Java</h5>
+            <ul>
+              
+    <li class="none">
+                    <a href="../index.html">Home</a>
+          </li>
+          </ul>
+              <h5>Downloads</h5>
+            <ul>
+              
+    <li class="none">
+                    <a href="../download.cgi">Releases</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../modules/index.html">Modules</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../tools/index.html">Tools</a>
+          </li>
+          </ul>
+              <h5>Documentation</h5>
+            <ul>
+              
+          
+              
+      
+            
+      
+            
+      
+            
+      
+            
+      
+            
+      
+            
+      
+            
+      
+            
+      
+              
+        <li class="expanded">
+                    <a href="../1_4_1/contents.html">Version 1.4.1</a>
+                  <ul>
+                  
+    <li class="none">
+                    <a href="../1_4_1/toc.html">Table of Contents</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1_4_1/installationguide.html">Installation Guide</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1_4_1/quickstartguide.html">QuickStart Guide</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1_4_1/userguide.html">User Guide</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1_4_1/jaxws-guide.html">JAXWS Guide</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1_4_1/pojoguide.html">POJO Guide</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1_4_1/spring.html">Spring Guide</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1_4_1/webadminguide.html">Web Administrator's Guide</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1_4_1/migration.html">Migration Guide (from Axis1)</a>
+          </li>
+              </ul>
+        </li>
+              
+    <li class="none">
+                    <a href="../1_4/contents.html">Version 1.4</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../1_3/contents.html">Version 1.3</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../1_2/contents.html">Version 1.2</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../1_1_1/contents.html">Version 1.1.1</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../1_1/contents.html">Version 1.1</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../1_0/index.html">Version 1.0</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../0_95/index.html">Version 0.95</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../0_94/index.html">Version 0.94</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../0_93/index.html">Version 0.93</a>
+          </li>
+          </ul>
+              <h5>Resources</h5>
+            <ul>
+              
+    <li class="none">
+                    <a href="../faq.html">FAQ</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../articles.html">Articles</a>
+          </li>
+              
+    <li class="none">
+                    <a href="http://wiki.apache.org/ws/FrontPage/Axis2/" class="externalLink">Wiki</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../refLib.html">Reference Library</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../../1_4_1/api/index.html">Online Java Docs</a>
+          </li>
+          </ul>
+              <h5>Get Involved</h5>
+            <ul>
+              
+    <li class="none">
+                    <a href="../overview.html">Overview</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../svn.html">Checkout the Source</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../mail-lists.html">Mailing Lists</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../release-process.html">Release Process</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../guidelines.html">Developer Guidelines</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../siteHowTo.html">Build the Site</a>
+          </li>
+          </ul>
+              <h5>Project Information</h5>
+            <ul>
+              
+    <li class="none">
+                    <a href="../team-list.html">Project Team</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../issue-tracking.html">Issue Tracking</a>
+          </li>
+              
+    <li class="none">
+                    <a href="http://svn.apache.org/viewcvs.cgi/webservices/axis2/trunk/?root=Apache-SVN" class="externalLink">Source Code</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../thanks.html">Acknowledgements</a>
+          </li>
+              
+    <li class="none">
+                    <a href="http://www.apache.org/licenses/LICENSE-2.0.html" class="externalLink">License</a>
+          </li>
+          </ul>
+                                           <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
+            <img alt="Built by Maven" src="../images/logos/maven-feather.png"></img>
+          </a>
+                       
+  
+
+  
+    
+  
+  
+    
+        </div>
+    </div>
+    <div id="bodyColumn">
+      <div id="contentBox">
+        <html lang="en" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"><head><meta name="generator" content="HTML Tidy for Windows (vers 14 June 2007), see www.w3.org"><meta http-equiv="content-type" content="">Apache Axis2 User's Guide- Creating Clients<link href="../css/axis-docs.css" rel="stylesheet" type="text/css" media="all"></head><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 when 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 being
+certainly usable, is not as straightforward as ADB.</p>
+<p>JiBX: JiBX is a complete 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>Note 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 class="externalLink" 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 type="1"><li>
+href=&quot;http://ws.apache.org/axis2/download/1_4_1/download.cgi#std-bin&quot;
+<a href="">Download</a> and unpack the Apache Axis2 Standard
+Distribution, if you have not done it already.</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 type: java
+org.apache.axis2.axis2userguide.Client</li>
+</ol>
+<p><b>The long story:</b></p>
+<p>If you have not done it already, <a class="externalLink" href="http://ws.apache.org/axis2/download/1_4_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 functionalities
+of the services are contained in a single class called a stub. The
+stub contains inner classes corresponding to all 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 an
+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 class="externalLink" 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>Note 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 raw classes.</p>
+<p>Make sure all the jar files in the Axis2 lib directory are in
+the classpath.</p>
+<p>If you have a service corresponding to this client you can run
+the client by adding the jar file to your classpath and typing:
+java org.apache.axis2.axis2userguide.Client</p>
+<p>(If you don't have such a service,, refer to the <a href="userguide-buildingservices.html">Building services</a>
+document.)</p>
+<p>You should see the response in the console window of your
+servlet container. It should look something like this:</p>
+<p><img src="images/fig03.jpg" alt="Response in a console window of your servlet container" /><br />
+</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> and
+JAXBRI.</p>
+<p><strong>See the Next Section</strong> -<a href="userguide-buildingservices.html#buildservices">Building
+Services</a></p>
+</html>
+      </div>
+    </div>
+    <div class="clear">
+      <hr/>
+    </div>
+    <div id="footer">
+      <div class="xright">&#169;  
+          2004-2008
+    
+          Apache Software Foundation
+          
+  
+
+  
+    
+  
+  
+    
+  </div>
+      <div class="clear">
+        <hr/>
+      </div>
+    </div>
+  </body>
+</html>