You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by de...@apache.org on 2006/11/13 20:42:03 UTC

svn commit: r474461 - in /webservices/axis2/branches/java/1_1/xdocs/1_1: http-transport.html src/Axis2SampleDocLitServiceCode.html tcp-transport.html userguide.html

Author: deepal
Date: Mon Nov 13 11:42:02 2006
New Revision: 474461

URL: http://svn.apache.org/viewvc?view=rev&rev=474461
Log:
fixed a number of html formatting issues
  - Sorry for committing at this time  :)

Modified:
    webservices/axis2/branches/java/1_1/xdocs/1_1/http-transport.html
    webservices/axis2/branches/java/1_1/xdocs/1_1/src/Axis2SampleDocLitServiceCode.html
    webservices/axis2/branches/java/1_1/xdocs/1_1/tcp-transport.html
    webservices/axis2/branches/java/1_1/xdocs/1_1/userguide.html

Modified: webservices/axis2/branches/java/1_1/xdocs/1_1/http-transport.html
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/1_1/xdocs/1_1/http-transport.html?view=diff&rev=474461&r1=474460&r2=474461
==============================================================================
--- webservices/axis2/branches/java/1_1/xdocs/1_1/http-transport.html (original)
+++ webservices/axis2/branches/java/1_1/xdocs/1_1/http-transport.html Mon Nov 13 11:42:02 2006
@@ -1,202 +1,216 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-
-<head>
-  <meta http-equiv="content-type" content="">
-  <title>HTTP transports</title>
-  <link href="../css/axis-docs.css" rel="stylesheet" type="text/css" media="all" />
-</head>
-
-<body lang="en">
-
-<a name="configTransport"></a>
-<h1>HTTP Transport</h1>
-
-<p>This document is all about HTTP sender and HTTP receiver, and how they
-work in Axis2.</p>
-
-<p><i>Send your feedback or questions to: <a
-href="mailto:axis-dev@ws.apache.org">axis-dev@ws.apache.org</a></i>. Prefix
-subject with [Axis2]. To subscribe to mailing list see <a
-href="http://ws.apache.org/axis2/mail-lists.html">here.</a></p>
-
-<h2>Content</h2>
-<ul>
-  <li><a href="#CommonsHTTPTransportSender">CommonsHTTPTransportSender</a>
-    <ul>
-      <li><a href="#httpsupport">HTTPS support</a></li>
-    </ul>
-  </li>
-  <li><a href="#timeout_config">Timeout Configuration</a></li>
-  <li><a href="#version_config">HTTP Version Configuration</a></li>
-  <li><a href="#auth">Proxy Authentication</a></li>
-  <li><a href="#preemptive_auth">Basic,Digest and NTLM Authentication</a></li>
-</ul>
-
-<a name="CommonsHTTPTransportSender"></a>
-<h2>CommonsHTTPTransportSender</h2>
-
-<p>This is the default transport sender that is used in Server API as well as
-Client API. As the name implies it is based on commons-httpclient-3.0.1. In
-order to acquire the maximum flexibility, this sender has implemented POST
-interface and GET interface. GET and HTTP interfaces are also involved in Axis2 REST support.</p>
-
-<p>Chunking and KeepAlive support is also integrated via the
-facilities provided by commons-httpclient along with HTTP 1.1 support.</p>
-
-<p>&lt;transportSender/&gt; element is used to define transport senders in
-the Axis2.xml as follows:</p>
-<pre>&lt;transportSender name="http" class="org.apache.axis2.transport.http.CommonsHTTPTransportSender"&gt;<br>        &lt;parameter name="PROTOCOL" locked="false"&gt;HTTP/1.1&lt;/parameter&gt;<br>        &lt;parameter name="Transfer-Encoding"&gt;chunked&lt;/parameter&gt;<br>&lt;/transportSender&gt;<br></pre>
-
-<p>The above code snippet shows the simplest configuration of transport
-sender for common use. &lt;parameter/&gt; element introduces the additional parameters that
-should be compliant with the sender. HTTP PROTOCOL version sets as HTTP/1.0
-or HTTP/1.1. Default version is HTTP/1.1. It should be noted that chunking
-support is available only for HTTP/1.1. Thus, even if the user turn on "chunking", if the HTTP version is 1.0, this setting will be ignored by the transport framework. KeepAlive property is default in version 1.1.</p>
-
-<p>Some absolute properties are provided at runtime, such as character encoding style (UTF-8, UTF-16 etc) etc, are provided via MessageContext.</p>
-
-<a name="httpsupport"></a>
-<h3>HTTPS support</h3>
-
-It should be noted that CommonsHTTPTransportSender can be used to communicate
-over https. <code></code>
-<pre>&lt;transportSender name="<b>https</b>" class="org.apache.axis2.transport.http.CommonsHTTPTransportSender"&gt;<br>        &lt;parameter name="PROTOCOL" locked="false"&gt;HTTP/1.1&lt;/parameter&gt;<br>        &lt;parameter name="Transfer-Encoding"&gt;chunked&lt;/parameter&gt;<br>&lt;/transportSender&gt;<br></pre>
-
-<p>Please note that https works only when the server does not expect to
-authenticate the clients and where the server has the clients' public keys in
-its trust store.</p>
-
-<a name="timeout_config"></a>
-<h2>Timeout Configuration</h2>
-
-<p>There are two timeout exists in transport level. They are called, Socket
-timeout and Connection timeout. This can be configured in deployment time or
-in run time. At the time of deployment, user has to add the following lines in
-Axis2.xml.</p>
-
-<p>For Socket timeout:</p>
-<pre>&lt;parameter name="SO_TIMEOUT" locked="false"&gt;some_int_value&lt;/parameter&gt;</pre>
-
-<p>For Connection timeout:</p>
-<pre> &lt;parameter name="CONNECTION_TIMEOUT" locked="false"&gt;some_int_value&lt;/parameter&gt;</pre>
-<br>
-At runtime it is set as follows in the Stub. <source>
-<pre>...
-Options options = new Options();
-options.setProperty(HTTPConstants.SO_TIMEOUT,new Integer(timeOutInMilliSeconds));
-options.setProperty(HTTPConstants.CONNECTION_TIMEOUT,new Integer(timeOutInMilliSeconds));
-
-// or
-
-options.setTimeOutInMilliSeconds(timeOutInMilliSeconds);
-...</pre>
-</source>
-
-<a name="version_config"></a>
-<h2>HTTP Version Configuration</h2>
-
-<p>The default HTTP version is 1.1. There are two methods in which user can
-change HTTP version to 1.0</p>
-<ol>
-  <li>By defining version in Axis2.xml as shown below.</li>
-  <pre> &lt;parameter name="PROTOCOL" locked="false"&gt;HTTP/1.0&lt;/parameter&gt;</pre>
-  <li>Or user can change version at runtime by doing the following</li>
-  <pre>...
-options.setProperty(org.apache.axis2.context.MessageContextConstants.HTTP_PROTOCOL_VERSION,org.apache.axis2.transport.http.HTTPConstants.HEADER_PROTOCOL_10);
-...</pre>
-</ol>
-
-<a name="auth"></a>
-<h2>Proxy Authentication</h2>
-
-<p>Commons-http client has the inbuilt ability to support proxy authentication. Axis2 uses deployment time and runtime mechanisms to authenticate proxies.
-In deployment time, user has to change the Axis2.xml as follows. This
-authentication will be available in http and https.</p>
-<pre>&lt;transportSender name="<b>http</b>" class="org.apache.axis2.transport.http.CommonsHTTPTransportSender"&gt;
-        &lt;parameter name="PROTOCOL" locked="false"&gt;HTTP/1.1&lt;/parameter&gt;
-        &lt;parameter name="PROXY" proxy_host="proxy_host_name" proxy_port="proxy_host_port" locked="true&gt;userName:domain:passWord&lt;/parameter&gt;
-&lt;/transportSender&gt;<br></pre>
-
-<p>For a particular proxy, if authentication is not available fill
-"userName:domain:passWord"as "anonymous:anonymous:anonymous".</p>
-
-<p>At runtime user can override the PROXY settings with an Object of
-HttpTransportProperties.ProxyProperties. On the stub initiate an object of
-prior and set it to the MessageContext's property bag via
-HttpConstants.PROXY. On the stub, it depicts as follows,</p>
-<pre>...
-Options options = new Options();
-....
-
-HttpTransportProperties.ProxyProperties proxyProperties = new HttpTransportProperties.new ProxyProperties();
-proxyProperties.setProxyHostName(....);
-proxyProperties.setProxyPort(...);
-...
-options.setProperty(HttpConstants.PROXY, proxyProperties);
-....</pre>
-
-<p>The above code would eventually override the deployment proxy
-configuration settings.</p>
-
-
-<a name="preemptive_auth"></a>
-<h2>Basic,Digest and NTLM Authentication</h2>
-
-<p>HttpClient supports three different types of http authentication schemes: Basic, Digest and NTLM. Based on the challenge provided by server httpclient automatically selects the authentication scheme the request should be authenticated with. The most secure will be NTLM and least secure will be Basic.</p>
-
-<p>NTLM is the most complex of the authentication protocols supported by
-HttpClient. It requires an instance of NTCredentials be available for the
-domain name of the server or the default credentials. Note that since NTLM
-does not use the notion of realms HttpClient uses the domain name of the
-server as the name of the realm. Also note that the username provided to the
-NTCredentials should not be prefixed with the domain - ie: "axis2" is correct
-whereas "DOMAIN\axis2" is not correct.</p>
-
-<p>There are some significant differences in the way that NTLM works compared
-with basic and digest authentication. These differences are generally handled
-by HttpClient, however having an understanding of these differences can help
-avoid problems when using NTLM authentication.</p>
-<ol>
-  <li>NTLM authentication works almost exactly the same as any other form of
-    authentication in terms of the HttpClient API.  The only difference is
-    that you need to supply 'NTCredentials' instead of
-    'UsernamePasswordCredentials' (NTCredentials actually extends
-    UsernamePasswordCredentials so you can use NTCredentials right throughout
-    your application if need be).</li>
-  <li>The realm for NTLM authentication is the domain name of the computer
-    being connected to, this can be troublesome as servers often have
-    multiple domain names that refer to them.  Only the domain name that
-    HttpClient connects to (as specified by the HostConfiguration) is used to
-    look up the credentials. It is generally advised that while initially
-    testing NTLM authentication, you pass the realm in as null which is used
-    as the default.</li>
-  <li>NTLM authenticates a connection and not a request, so you need to
-    authenticate every time a new connection is made and keeping the
-    connection open during authentication is vital.  Due to this, NTLM cannot
-    be used to authenticate with both a proxy and the server, nor can NTLM be
-    used with HTTP 1.0 connections or servers that do not support HTTP
-    keep-alives.</li>
-</ol>
-
-<p>Axis2 also allows to add a custom Authentication Scheme to httpclient.</p>
-
-<p>The static inner bean Authenticator of HttpTransportProperties will hold the state of the server to be authenticated with. Once filled it has to be set to the Options's property bag with the key as HTTPConstants.AUTHENTICATE. The following code snippet shows the way of configuring the transport framework to use Basic Authentication:</p>
- 
- <pre>
- ...
- Options options = new Options();
- 
- HttpTransportProperties.Authenticator
-                       auth = new HttpTransportProperties.Authenticator();
-            auth.setUsername("username");
-            auth.setPassword("password");
-            // set if realm or domain is know
-
- options.setProperty(org.apache.axis2.transport.http.HTTPConstants.BASIC_AUTHENTICATE,auth);
- ...
- </pre>
-
-</body>
-
-</html>
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+
+<head>
+  <meta http-equiv="content-type" content="">
+  <title>HTTP transports</title>
+  <link href="../css/axis-docs.css" rel="stylesheet" type="text/css" media="all" />
+</head>
+
+<body lang="en">
+
+<a name="configTransport"></a>
+<h1>HTTP Transport</h1>
+
+<p>This document is all about HTTP sender and HTTP receiver, and how they
+work in Axis2.</p>
+
+<p><i>Send your feedback or questions to: <a
+href="mailto:axis-dev@ws.apache.org">axis-dev@ws.apache.org</a></i>. Prefix
+subject with [Axis2]. To subscribe to mailing list see <a
+href="http://ws.apache.org/axis2/mail-lists.html">here.</a></p>
+
+<h2>Content</h2>
+<ul>
+  <li><a href="#CommonsHTTPTransportSender">CommonsHTTPTransportSender</a>
+    <ul>
+      <li><a href="#httpsupport">HTTPS support</a></li>
+    </ul>
+  </li>
+  <li><a href="#timeout_config">Timeout Configuration</a></li>
+  <li><a href="#version_config">HTTP Version Configuration</a></li>
+  <li><a href="#auth">Proxy Authentication</a></li>
+  <li><a href="#preemptive_auth">Basic,Digest and NTLM Authentication</a></li>
+</ul>
+
+<a name="CommonsHTTPTransportSender"></a>
+<h2>CommonsHTTPTransportSender</h2>
+
+<p>This is the default transport sender that is used in Server API as well as
+Client API. As the name implies it is based on commons-httpclient-3.0.1. In
+order to acquire the maximum flexibility, this sender has implemented POST
+interface and GET interface. GET and HTTP interfaces are also involved in Axis2 REST support.</p>
+
+<p>Chunking and KeepAlive support is also integrated via the
+facilities provided by commons-httpclient along with HTTP 1.1 support.</p>
+
+<p>&lt;transportSender/&gt; element is used to define transport senders in
+the Axis2.xml as follows:</p>
+<pre>&lt;transportSender name="http" class="org.apache.axis2.transport.http.CommonsHTTPTransportSender"&gt;
+     &lt;parameter name="PROTOCOL" locked="false"&gt;HTTP/1.1&lt;/parameter&gt;
+     &lt;parameter name="Transfer-Encoding"&gt;chunked&lt;/parameter&gt;
+      &lt;/transportSender&gt;
+</pre>
+
+<p>The above code snippet shows the simplest configuration of transport
+sender for common use. &lt;parameter/&gt; element introduces the additional parameters that
+should be compliant with the sender. HTTP PROTOCOL version sets as HTTP/1.0
+or HTTP/1.1. Default version is HTTP/1.1. It should be noted that chunking
+support is available only for HTTP/1.1. Thus, even if the user turn on "chunking", if the HTTP version is 1.0, this setting will be ignored by the transport framework. KeepAlive property is default in version 1.1.</p>
+
+<p>Some absolute properties are provided at runtime, such as character encoding style (UTF-8, UTF-16 etc) etc, are provided via MessageContext.</p>
+
+<a name="httpsupport"></a>
+<h3>HTTPS support</h3>
+
+It should be noted that CommonsHTTPTransportSender can be used to communicate
+over https. <code></code>
+<pre>&lt;transportSender name="<b>https</b>" class="org.apache.axis2.transport.http.CommonsHTTPTransportSender"&gt;
+     &lt;parameter name="PROTOCOL" locked="false"&gt;HTTP/1.1&lt;/parameter&gt;
+    &lt;parameter name="Transfer-Encoding"&gt;chunked&lt;/parameter&gt;
+ &lt;/transportSender&gt;
+</pre>
+
+<p>Please note that https works only when the server does not expect to
+authenticate the clients and where the server has the clients' public keys in
+its trust store.</p>
+
+<a name="timeout_config"></a>
+<h2>Timeout Configuration</h2>
+
+<p>There are two timeout exists in transport level. They are called, Socket
+timeout and Connection timeout. This can be configured in deployment time or
+in run time. At the time of deployment, user has to add the following lines in
+Axis2.xml.</p>
+
+<p>For Socket timeout:</p>
+<pre>&lt;parameter name="SO_TIMEOUT" locked="false"&gt;some_int_value&lt;/parameter&gt;</pre>
+
+<p>For Connection timeout:</p>
+<pre> &lt;parameter name="CONNECTION_TIMEOUT" locked="false"&gt;some_int_value&lt;/parameter&gt;</pre>
+<br>
+At runtime it is set as follows in the Stub. <source>
+<pre>...
+Options options = new Options();
+options.setProperty(HTTPConstants.SO_TIMEOUT,new Integer(timeOutInMilliSeconds));
+options.setProperty(HTTPConstants.CONNECTION_TIMEOUT,new Integer(timeOutInMilliSeconds));
+
+// or
+
+options.setTimeOutInMilliSeconds(timeOutInMilliSeconds);
+...</pre>
+</source>
+
+<a name="version_config"></a>
+<h2>HTTP Version Configuration</h2>
+
+<p>The default HTTP version is 1.1. There are two methods in which user can
+change HTTP version to 1.0</p>
+<ol>
+  <li>By defining version in Axis2.xml as shown below.</li>
+  <pre> &lt;parameter name="PROTOCOL" locked="false"&gt;HTTP/1.0&lt;/parameter&gt;</pre>
+  <li>Or user can change version at runtime by doing the following</li>
+  <pre>...
+options.setProperty(org.apache.axis2.context.MessageContextConstants.HTTP_PROTOCOL_VERSION,org.apache.axis2.transport.http.HTTPConstants.HEADER_PROTOCOL_10);
+...</pre>
+</ol>
+
+<a name="auth"></a>
+<h2>Proxy Authentication</h2>
+
+<p>Commons-http client has the inbuilt ability to support proxy authentication. Axis2 uses deployment time and runtime mechanisms to authenticate proxies.
+In deployment time, user has to change the Axis2.xml as follows. This
+authentication will be available in http and https.</p>
+<pre>&lt;transportSender name="<b>http</b>" class="org.apache.axis2.transport.http.CommonsHTTPTransportSender"&gt;
+        &lt;parameter name="PROTOCOL" locked="false"&gt;HTTP/1.1&lt;/parameter&gt;
+        &lt;parameter name="PROXY" proxy_host="proxy_host_name" proxy_port="proxy_host_port" locked="true&gt;userName:domain:passWord&lt;/parameter&gt;
+&lt;/transportSender&gt;
+</pre>
+
+<p>For a particular proxy, if authentication is not available fill
+"userName:domain:passWord"as "anonymous:anonymous:anonymous".</p>
+
+<p>At runtime user can override the PROXY settings with an Object of
+HttpTransportProperties.ProxyProperties. On the stub initiate an object of
+prior and set it to the MessageContext's property bag via
+HttpConstants.PROXY. On the stub, it depicts as follows,</p>
+<source>
+<pre>...
+Options options = new Options();
+....
+
+HttpTransportProperties.ProxyProperties proxyProperties = new HttpTransportProperties.new ProxyProperties();
+proxyProperties.setProxyHostName(....);
+proxyProperties.setProxyPort(...);
+...
+options.setProperty(HttpConstants.PROXY, proxyProperties);
+....
+</pre>
+</source>
+
+<p>The above code would eventually override the deployment proxy
+configuration settings.</p>
+
+
+<a name="preemptive_auth"></a>
+<h2>Basic,Digest and NTLM Authentication</h2>
+
+<p>HttpClient supports three different types of http authentication schemes: Basic, Digest and NTLM. Based on the challenge provided by server httpclient automatically selects the authentication scheme the request should be authenticated with. The most secure will be NTLM and least secure will be Basic.</p>
+
+<p>NTLM is the most complex of the authentication protocols supported by
+HttpClient. It requires an instance of NTCredentials be available for the
+domain name of the server or the default credentials. Note that since NTLM
+does not use the notion of realms HttpClient uses the domain name of the
+server as the name of the realm. Also note that the username provided to the
+NTCredentials should not be prefixed with the domain - ie: "axis2" is correct
+whereas "DOMAIN\axis2" is not correct.</p>
+
+<p>There are some significant differences in the way that NTLM works compared
+with basic and digest authentication. These differences are generally handled
+by HttpClient, however having an understanding of these differences can help
+avoid problems when using NTLM authentication.</p>
+<ol>
+  <li>NTLM authentication works almost exactly the same as any other form of
+    authentication in terms of the HttpClient API.  The only difference is
+    that you need to supply 'NTCredentials' instead of
+    'UsernamePasswordCredentials' (NTCredentials actually extends
+    UsernamePasswordCredentials so you can use NTCredentials right throughout
+    your application if need be).</li>
+  <li>The realm for NTLM authentication is the domain name of the computer
+    being connected to, this can be troublesome as servers often have
+    multiple domain names that refer to them.  Only the domain name that
+    HttpClient connects to (as specified by the HostConfiguration) is used to
+    look up the credentials. It is generally advised that while initially
+    testing NTLM authentication, you pass the realm in as null which is used
+    as the default.</li>
+  <li>NTLM authenticates a connection and not a request, so you need to
+    authenticate every time a new connection is made and keeping the
+    connection open during authentication is vital.  Due to this, NTLM cannot
+    be used to authenticate with both a proxy and the server, nor can NTLM be
+    used with HTTP 1.0 connections or servers that do not support HTTP
+    keep-alives.</li>
+</ol>
+
+<p>Axis2 also allows to add a custom Authentication Scheme to httpclient.</p>
+
+<p>The static inner bean Authenticator of HttpTransportProperties will hold the state of the server to be authenticated with. Once filled it has to be set to the Options's property bag with the key as HTTPConstants.AUTHENTICATE. The following code snippet shows the way of configuring the transport framework to use Basic Authentication:</p>
+ 
+ <source>
+<pre>
+ ...
+ Options options = new Options();
+ 
+ HttpTransportProperties.Authenticator
+                       auth = new HttpTransportProperties.Authenticator();
+            auth.setUsername("username");
+            auth.setPassword("password");
+            // set if realm or domain is know
+
+ options.setProperty(org.apache.axis2.transport.http.HTTPConstants.BASIC_AUTHENTICATE,auth);
+ ...
+ </pre></source>
+
+
+</body>
+
+</html>

Modified: webservices/axis2/branches/java/1_1/xdocs/1_1/src/Axis2SampleDocLitServiceCode.html
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/1_1/xdocs/1_1/src/Axis2SampleDocLitServiceCode.html?view=diff&rev=474461&r1=474460&r2=474461
==============================================================================
--- webservices/axis2/branches/java/1_1/xdocs/1_1/src/Axis2SampleDocLitServiceCode.html (original)
+++ webservices/axis2/branches/java/1_1/xdocs/1_1/src/Axis2SampleDocLitServiceCode.html Mon Nov 13 11:42:02 2006
@@ -1,53 +1,171 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-  <meta http-equiv="content-type" content="">
-  <title></title>
-  <link href="../../css/axis-docs.css" rel="stylesheet" type="text/css" media="all" />
-</head>
-
-<body lang="en">
-<h1>Code Listing For Axis2SampleDocLitService Service</h1>
-
-<h2>Server:</h2>
-
-<h3>echoString</h3>
-
-<p>Locate the following code segment in "Axis2SampleDocLitServiceSkeleton.java".<br>
-</p>
-<pre> public org.apache.axis2.userguide.xsd.EchoStringReturnDocument echoString<br>        (org.apache.axis2.userguide.xsd.EchoStringParamDocument param4 ){<br>        //Todo: fill this with the necessary business logic<br>        throw new  java.lang.UnsupportedOperationException();<br>     }<br> </pre>
-
-<p>Then complete the code by adding the business logic as shown below:</p>
-<pre style="margin-left: 40px;">public org.apache.axis2.userguide.xsd.EchoStringReturnDocument echoString<br>   (org.apache.axis2.userguide.xsd.EchoStringParamDocument param4) throws Exception {<br>   <br>   //Use the factory to create the output document.<br>   org.apache.axis2.userguide.xsd.EchoStringReturnDocument retDoc = <br>           org.apache.axis2.userguide.xsd.EchoStringReturnDocument.Factory.newInstance();<br>   <br>   //send the string back.<br>   retDoc.setEchoStringReturn(param4.getEchoStringParam());<br>   return retDoc;<br> }<br></pre>
-
-<h3>echoStringArray</h3>
-
-<p>The code segment for echoStringArray is shown below:</p>
-<pre style="margin-left: 40px;">public org.apache.axis2.userguide.xsd.EchoStringArrayReturnDocument echoStringArray<br>   (org.apache.axis2.userguide.xsd.EchoStringArrayParamDocument param0) throws Exception {<br><br>   //Use the factory to create the output document.<br>   org.apache.axis2.userguide.xsd.EchoStringArrayReturnDocument retDoc = <br>           org.apache.axis2.userguide.xsd.EchoStringArrayReturnDocument.Factory.newInstance();<br><br>   //Get the String array from the input parameters.<br>   String[] inParams = param0.getEchoStringArrayParam().getStringArray();<br>   org.apache.axis2.userguide.xsd.ArrayOfstringLiteral retParams = <br>           org.apache.axis2.userguide.xsd.ArrayOfstringLiteral.Factory.newInstance();<br><br>   //Set the input parameters to the output parameters for echoing.<br>     for (int i = 0; i &lt; inParams.length; i++) {<br>        retParams.addString(inParams[i]);<br>     }<br><br>   //return the output document.<br>   retDoc.setEchoStr
 ingArrayReturn(retParams); <br>   return retDoc;<br>}<br></pre>
-
-<h3>echoStruct</h3>
-
-<p>The code segment for echoStruct is shown below:</p>
-<pre style="margin-left: 40px;">public org.apache.axis2.userguide.xsd.EchoStructReturnDocument echoStruct<br>     (org.apache.axis2.userguide.xsd.EchoStructParamDocument param2) throws Exception {<br>     //Use the factory to create the output document.<br>     org.apache.axis2.userguide.xsd.EchoStructReturnDocument retDoc = <br>             org.apache.axis2.userguide.xsd.EchoStructReturnDocument.Factory.newInstance();<br><br>     //Get the SOAPStrcut from the incoming parameters<br>     org.apache.axis2.userguide.xsd.SOAPStruct inStruct = param2.getEchoStructParam();<br><br>     //Struct for the sending back<br>     org.apache.axis2.userguide.xsd.SOAPStruct outStruct = <br>             org.apache.axis2.userguide.xsd.SOAPStruct.Factory.newInstance();<br><br>     //Fill the outgoing struct<br>     outStruct.setVarFloat(inStruct.getVarFloat());<br>     outStruct.setVarInt(inStruct.getVarInt());<br>     outStruct.setVarString(inStruct.getVarString());<br>     //Set the outgoing
  document.<br>     retDoc.setEchoStructReturn(outStruct);<br>     return retDoc;<br>}<br></pre>
-
-<h2>Client:</h2>
-
-<h3>Client for echoString Operation</h3>
-
-<p>The following code fragment shows the necessary code for utilizing the
-echoString operation of the Axis2SampleDocLitService that we have already
-deployed. The code is very simple to understand and the explanations are in
-the form of comments.</p>
-<pre>     try {<br>            org.apache.axis2.userguide.Axis2SampleDocLitServiceStub stub = new<br>                    org.apache.axis2.userguide.Axis2SampleDocLitServiceStub(null,<br>                    "http://localhost:8080/axis2/services/Axis2SampleDocLitService");<br>            <br>            //Create the request document to be sent.<br>            org.apache.axis2.userguide.xsd.EchoStringParamDocument reqDoc =<br>                    org.apache.axis2.userguide.xsd.EchoStringParamDocument.Factory.newInstance();<br>            reqDoc.setEchoStringParam("Axis2 Echo");<br>            <br>            //invokes the Web service.<br>            org.apache.axis2.userguide.xsd.EchoStringReturnDocument resDoc = stub.echoString(reqDoc);<br>            System.out.println(resDoc.getEchoStringReturn());<br><br>        } catch (java.rmi.RemoteException e) {<br>            e.printStackTrace();<br>        }</pre>
-
-<p>Similarly the following code fragments show client side code for
-echoStringArray operation and echoStruct operation respectively.</p>
-
-<h3>Client for echoStringArray Operation</h3>
-<pre>      try {<br>            //Create the stub by passing the AXIS_HOME and target EPR.<br>            //We pass null to the AXIS_HOME and hence the stub will use the current directory as the AXIS_HOME<br>            org.apache.axis2.userguide.Axis2SampleDocLitServiceStub stub = new <br>                    org.apache.axis2.userguide.Axis2SampleDocLitServiceStub(null,<br>                    "http://localhost:8080/axis2/services/Axis2SampleDocLitService");<br><br>            //Create the request document to be sent.<br>            org.apache.axis2.userguide.xsd.EchoStringArrayParamDocument reqDoc = <br>                    org.apache.axis2.userguide.xsd.EchoStringArrayParamDocument.Factory.newInstance();<br>            org.apache.axis2.userguide.xsd.ArrayOfstringLiteral paramArray = <br>                    org.apache.axis2.userguide.xsd.ArrayOfstringLiteral.Factory.newInstance();<br><br>            paramArray.addString("Axis2");<br>            paramArray.addString("Echo");<b
 r><br>            reqDoc.setEchoStringArrayParam(paramArray);<br>            org.apache.axis2.userguide.xsd.EchoStringArrayReturnDocument resDoc = stub.echoStringArray(reqDoc);<br><br>            //Get the response params<br>            String[] resParams = resDoc.getEchoStringArrayReturn().getStringArray();<br><br>            for (int i = 0; i &lt; resParams.length; i++) {<br>                 System.out.println(resParams[i]);<br>            }<br>        } catch (java.rmi.RemoteException e) {<br>            e.printStackTrace();  <br>        }<br></pre>
-
-<h3>Client for echoStruct Operation</h3>
-<pre>          try {<br>            //Create the stub by passing the AXIS_HOME and target EPR.<br>            //We pass null to the AXIS_HOME and hence the stub will use the current directory as the AXIS_HOME<br>            org.apache.axis2.userguide.Axis2SampleDocLitServiceStub stub = new<br>                    org.apache.axis2.userguide.Axis2SampleDocLitServiceStub(null,<br>                    "http://localhost:8080/axis2/services/Axis2SampleDocLitService");<br>            //Create the request Document<br>            org.apache.axis2.userguide.xsd.EchoStructParamDocument reqDoc =<br>                    org.apache.axis2.userguide.xsd.EchoStructParamDocument.Factory.newInstance();<br><br>            //Create the complex type<br>            org.apache.axis2.userguide.xsd.SOAPStruct reqStruct =<br>                    org.apache.axis2.userguide.xsd.SOAPStruct.Factory.newInstance();<br><br>            reqStruct.setVarFloat(100.50F);<br>            reqStruct.setVarInt(10);<br>   
          reqStruct.setVarString("High");<br><br>            reqDoc.setEchoStructParam(reqStruct);<br><br>            //Service invocation<br>            org.apache.axis2.userguide.xsd.EchoStructReturnDocument resDoc = stub.echoStruct(reqDoc);<br>            org.apache.axis2.userguide.xsd.SOAPStruct resStruct = resDoc.getEchoStructReturn();<br><br>            System.out.println("floot Value :" + resStruct.getVarFloat());<br>            System.out.println("int Value :" + resStruct.getVarInt());<br>            System.out.println("String Value :" + resStruct.getVarString());<br>        } catch (java.rmi.RemoteException e) {<br>            e.printStackTrace();<br>        }<br></pre>
-
-</body>
-</html>
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+  <meta http-equiv="content-type" content="">
+  <title></title>
+  <link href="../../css/axis-docs.css" rel="stylesheet" type="text/css" media="all" />
+</head>
+
+<body lang="en">
+<h1>Code Listing For Axis2SampleDocLitService Service</h1>
+
+<h2>Server:</h2>
+
+<h3>echoString</h3>
+
+<p>Locate the following code segment in "Axis2SampleDocLitServiceSkeleton.java".<br>
+</p>
+<source><pre>public org.apache.axis2.userguide.xsd.EchoStringReturnDocument 
+        echoString(org.apache.axis2.userguide.xsd.EchoStringParamDocument param4 ){
+        //Todo: fill this with the necessary business logic
+        throw new  java.lang.UnsupportedOperationException();
+   }
+</pre></source>
+
+<p>Then complete the code by adding the business logic as shown below:</p>
+<source>
+<pre>public org.apache.axis2.userguide.xsd.EchoStringReturnDocument 
+       echoString(org.apache.axis2.userguide.xsd.EchoStringParamDocument param4) throws Exception {
+       //Use the factory to create the output document
+       org.apache.axis2.userguide.xsd.EchoStringReturnDocument retDoc = 
+           org.apache.axis2.userguide.xsd.EchoStringReturnDocument.Factory.newInstance();
+      //send the string back.
+      retDoc.setEchoStringReturn(param4.getEchoStringParam());
+      return retDoc;
+  }</pre>
+</source>
+
+<h3>echoStringArray</h3>
+
+<p>The code segment for echoStringArray is shown below:</p>
+<source>
+<pre>public org.apache.axis2.userguide.xsd.EchoStringArrayReturnDocument 
+      echoStringArray(org.apache.axis2.userguide.xsd.EchoStringArrayParamDocument param0) throws Exception {
+      //Use the factory to create the output document.
+     org.apache.axis2.userguide.xsd.EchoStringArrayReturnDocument retDoc = 
+     org.apache.axis2.userguide.xsd.EchoStringArrayReturnDocument.Factory.newInstance();
+     //Get the String array from the input parameters.
+     String[] inParams = param0.getEchoStringArrayParam().getStringArray();
+     org.apache.axis2.userguide.xsd.ArrayOfstringLiteral retParams =
+            org.apache.axis2.userguide.xsd.ArrayOfstringLiteral.Factory.newInstance();
+     //Set the input parameters to the output parameters for echoing.
+     for (int i = 0; i &lt; inParams.length; i++) {
+         retParams.addString(inParams[i]);<br>     }
+     //return the output document.
+    retDoc.setEchoStringArrayReturn(retParams);
+    return retDoc;
+   }</pre>
+</source>
+
+<h3>echoStruct</h3>
+
+<p>The code segment for echoStruct is shown below:</p>
+<source><pre>
+  public org.apache.axis2.userguide.xsd.EchoStructReturnDocument 
+        echoStruct(org.apache.axis2.userguide.xsd.EchoStructParamDocument param2) throws Exception {
+        //Use the factory to create the output document.
+        org.apache.axis2.userguide.xsd.EchoStructReturnDocument retDoc =
+        org.apache.axis2.userguide.xsd.EchoStructReturnDocument.Factory.newInstance();
+        //Get the SOAPStrcut from the incoming parameters
+        org.apache.axis2.userguide.xsd.SOAPStruct inStruct = param2.getEchoStructParam();
+        //Struct for the sending back
+        org.apache.axis2.userguide.xsd.SOAPStruct outStruct =
+                org.apache.axis2.userguide.xsd.SOAPStruct.Factory.newInstance();
+        //Fill the outgoing struct
+        outStruct.setVarFloat(inStruct.getVarFloat());
+        outStruct.setVarInt(inStruct.getVarInt());
+        outStruct.setVarString(inStruct.getVarString());
+        //Set the outgoing document.
+        retDoc.setEchoStructReturn(outStruct);
+        return retDoc;
+    }
+</pre></source>
+
+<h2>Client:</h2>
+
+<h3>Client for echoString Operation</h3>
+
+<p>The following code fragment shows the necessary code for utilizing the
+echoString operation of the Axis2SampleDocLitService that we have already
+deployed. The code is very simple to understand and the explanations are in
+the form of comments.</p>
+<source><pre>     try {
+                      org.apache.axis2.userguide.Axis2SampleDocLitServiceStub stub 
+                        = new org.apache.axis2.userguide.Axis2SampleDocLitServiceStub(null,
+                           "http://localhost:8080/axis2/services/Axis2SampleDocLitService");
+                      //Create the request document to be sent.
+                      org.apache.axis2.userguide.xsd.EchoStringParamDocument reqDoc =
+                          org.apache.axis2.userguide.xsd.EchoStringParamDocument.Factory.newInstance();
+                      reqDoc.setEchoStringParam("Axis2 Echo");
+                      //invokes the Web service.
+                      org.apache.axis2.userguide.xsd.EchoStringReturnDocument resDoc = 
+                                        stub.echoString(reqDoc);
+                      System.out.println(resDoc.getEchoStringReturn());
+                      } catch (java.rmi.RemoteException e) {
+                       e.printStackTrace();
+                      }
+</pre></source>
+
+<p>Similarly the following code fragments show client side code for
+echoStringArray operation and echoStruct operation respectively.</p>
+
+<h3>Client for echoStringArray Operation</h3>
+<source><pre>      try {
+                       //Create the stub by passing the AXIS_HOME and target EPR.
+                       //We pass null to the AXIS_HOME and hence the stub will use the current directory as the AXIS_HOME
+                       org.apache.axis2.userguide.Axis2SampleDocLitServiceStub stub = 
+                                    new org.apache.axis2.userguide.Axis2SampleDocLitServiceStub(null,
+                                    "http://localhost:8080/axis2/services/Axis2SampleDocLitService");
+                       //Create the request document to be sent.
+                       org.apache.axis2.userguide.xsd.EchoStringArrayParamDocument reqDoc = 
+                          org.apache.axis2.userguide.xsd.EchoStringArrayParamDocument.Factory.newInstance();
+                      org.apache.axis2.userguide.xsd.ArrayOfstringLiteral paramArray = 
+                           org.apache.axis2.userguide.xsd.ArrayOfstringLiteral.Factory.newInstance();
+                      paramArray.addString("Axis2");
+                      paramArray.addString("Echo");
+                      reqDoc.setEchoStringArrayParam(paramArray);
+                      org.apache.axis2.userguide.xsd.EchoStringArrayReturnDocument resDoc = 
+                      stub.echoStringArray(reqDoc); 
+                      //Get the response params
+                      String[] resParams = resDoc.getEchoStringArrayReturn().getStringArray();
+                      for (int i = 0; i &lt; resParams.length; i++) {
+                          System.out.println(resParams[i]);
+                      }
+                    } catch (java.rmi.RemoteException e) {
+                       e.printStackTrace(); 
+                    }
+               </pre>
+    </source>
+
+<h3>Client for echoStruct Operation</h3>
+<source><pre>try {
+                //Create the stub by passing the AXIS_HOME and target EPR.
+                //We pass null to the AXIS_HOME and hence the stub will use the current directory as the AXIS_HOME
+                org.apache.axis2.userguide.Axis2SampleDocLitServiceStub stub =
+                        new org.apache.axis2.userguide.Axis2SampleDocLitServiceStub(null,
+                        "http://localhost:8080/axis2/services/Axis2SampleDocLitService");
+                          //Create the request Document
+                        org.apache.axis2.userguide.xsd.EchoStructParamDocument reqDoc =
+                          org.apache.axis2.userguide.xsd.EchoStructParamDocument.Factory.newInstance();
+                         //Create the complex type
+                        org.apache.axis2.userguide.xsd.SOAPStruct reqStruct =
+                        org.apache.axis2.userguide.xsd.SOAPStruct.Factory.newInstance();
+                        reqStruct.setVarFloat(100.50F);
+                        reqStruct.setVarInt(10);
+                        reqStruct.setVarString("High");
+                        reqDoc.setEchoStructParam(reqStruct);
+                        //Service invocation
+                        org.apache.axis2.userguide.xsd.EchoStructReturnDocument resDoc = 
+                         stub.echoStruct(reqDoc);
+                       org.apache.axis2.userguide.xsd.SOAPStruct resStruct = 
+                          resDoc.getEchoStructReturn();
+                       System.out.println("floot Value :" + resStruct.getVarFloat());
+                       System.out.println("int Value :" + resStruct.getVarInt());
+                       System.out.println("String Value :" + resStruct.getVarString());
+                     } catch (java.rmi.RemoteException e) {
+                        e.printStackTrace();
+                    }
+</pre></source>
+
+</body>
+</html>

Modified: webservices/axis2/branches/java/1_1/xdocs/1_1/tcp-transport.html
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/1_1/xdocs/1_1/tcp-transport.html?view=diff&rev=474461&r1=474460&r2=474461
==============================================================================
--- webservices/axis2/branches/java/1_1/xdocs/1_1/tcp-transport.html (original)
+++ webservices/axis2/branches/java/1_1/xdocs/1_1/tcp-transport.html Mon Nov 13 11:42:02 2006
@@ -63,16 +63,18 @@
 
 <p>TCP transport can be enabled easily from the call API. The following code
 segment demonstrates how it can be done.</p>
-<source><pre>OMElement payload = ...
-
+<source><pre>
+OMElement payload = ...
 ServiceClient serviceClient = new ServiceClient();
 Options options = new Options();
 options.setTo(targetEPR);
-<!--options.useSeperateListener(false);--><!--commented off as their is an error--- "The method useSeperateListener(boolean)is undefined for the type Options">
+<!--options.useSeperateListener(false);-->
+<!--commented off as their is an error--- "The method useSeperateListener(boolean)is undefined for the type Options">
 serviceClient.setOptions(options);
 
 OMElement response =
-        serviceClient.sendReceive(payload);</pre>
+        serviceClient.sendReceive(payload);
+</pre>
 </source>
 <p>The transport that should be invoked is inferred from the targetEPR
 (tcp://...). In this case it is TCP and the listener, also TCP . SOAP Message
@@ -111,7 +113,8 @@
 Listener started by the Complete Async interaction)</p>
 
 <p>The following xml lines initializes the TCPTransport Receiver:</p>
-<source><pre>&lt;transportReceiver name="tcp" class="org.apache.axis2.transport.tcp.TCPServer"&gt;
+<source><pre>
+&lt;transportReceiver name="tcp" class="org.apache.axis2.transport.tcp.TCPServer"&gt;
     &lt;parameter name="port" locked="false"&gt;6060&lt;/parameter&gt;
 &lt;/transportReceiver&gt;</pre>
 </source>

Modified: webservices/axis2/branches/java/1_1/xdocs/1_1/userguide.html
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/1_1/xdocs/1_1/userguide.html?view=diff&rev=474461&r1=474460&r2=474461
==============================================================================
--- webservices/axis2/branches/java/1_1/xdocs/1_1/userguide.html (original)
+++ webservices/axis2/branches/java/1_1/xdocs/1_1/userguide.html Mon Nov 13 11:42:02 2006
@@ -98,7 +98,10 @@
 will be sent to samples directory. Other data binding tools you could use are
 adb (Axis data binding) and jaxme (<a
 href="http://ws.apache.org/jaxme/">JaxMe data binding</a>)</p>
-<pre style="margin-bottom: 0.2in;">WSDL2Java.sh -uri ../samples/wsdl/Axis2SampleDocLit.wsdl -ss -sd -d xmlbeans -o ../samples -p org.apache.axis2.userguide</pre>
+<pre>
+WSDL2Java.sh -uri ../samples/wsdl/Axis2SampleDocLit.wsdl -ss -sd -d xmlbeans 
+-o ../samples -p org.apache.axis2.userguide
+</pre>
 
 <p>This will generate the required classes in the <b>"sample/src"</b>
 directory, and the schema classes in
@@ -120,7 +123,17 @@
 will look when they are filled up see <a
 href="src/Axis2SampleDocLitServiceCode.html">Code Listing For
 Axis2SampleDocLitService Service</a></p>
-<pre>public org.apache.axis2.userguide.xsd.EchoStringReturnDocument echoString<br>   (org.apache.axis2.userguide.xsd.EchoStringParamDocument param4) throws Exception {<br>   //Use the factory to create the output document.<br>   org.apache.axis2.userguide.xsd.EchoStringReturnDocument retDoc = org.apache.axis2.userguide.xsd.EchoStringReturnDocument.Factory.newInstance();<br>   //send the string back.<br>   retDoc.setEchoStringReturn(param4.getEchoStringParam());<br>   return retDoc;<br> }</pre>
+<source>
+<pre>
+public org.apache.axis2.userguide.xsd.EchoStringReturnDocument 
+    echoString(org.apache.axis2.userguide.xsd.EchoStringParamDocument param4) throws Exception {
+    //Use the factory to create the output document.
+    org.apache.axis2.userguide.xsd.EchoStringReturnDocument retDoc = 
+           org.apache.axis2.userguide.xsd.EchoStringReturnDocument.Factory.newInstance();
+    //send the string back.
+    retDoc.setEchoStringReturn(param4.getEchoStringParam());
+   return retDoc;<br>
+</pre></source>
 
 <a name="Step4_Create_archive"></a>
 <h3>Step 3: Create Archive File</h3>
@@ -188,7 +201,11 @@
 <p>Let's see how we could generate java code (Stub) to handle the client side
 Web Service invocation for you. That can be done by running the WSDL2Java
 tool using following arguments</p>
-<pre style="margin-bottom: 0.2in;">WSDL2Java.sh -uri ../samples/wsdl/Axis2SampleDocLit.wsdl -d xmlbeans -o ../samples/src -p org.apache.axis2.userguide</pre>
+<source>
+<pre>WSDL2Java.sh -uri ../samples/wsdl/Axis2SampleDocLit.wsdl -d xmlbeans 
+     -o ../samples/src -p org.apache.axis2.userguide
+</pre></source>
+
 
 <p>This will generate client side stubs and xmlbeans types for your types.
 The Stub class that you need to use will be of the form
@@ -211,7 +228,23 @@
 <code>Axis2SampleDocLitService</code> that we have already deployed. The code
 is extremely simple to understand and the explanations are in the form of
 comments.</p>
-<pre>     try {<br>            org.apache.axis2.userguide.Axis2SampleDocLitServiceStub stub = new<br>                    org.apache.axis2.userguide.Axis2SampleDocLitServiceStub(null,<br>                    "http://localhost:8080/axis2/services/Axis2SampleDocLitService");<br>            <br>            //Create the request document to be sent.<br>            org.apache.axis2.userguide.xsd.EchoStringParamDocument reqDoc =<br>                    org.apache.axis2.userguide.xsd.EchoStringParamDocument.Factory.newInstance();<br>            reqDoc.setEchoStringParam("Axis2 Echo");<br>            <br>            //invokes the Web service.<br>            org.apache.axis2.userguide.xsd.EchoStringReturnDocument resDoc = stub.echoString(reqDoc);<br>            System.out.println(resDoc.getEchoStringReturn());<br><br>        } catch (java.rmi.RemoteException e) {<br>            e.printStackTrace();<br>        }<br></pre>
+<source>
+<pre>     try {
+               org.apache.axis2.userguide.Axis2SampleDocLitServiceStub stub 
+                  = new org.apache.axis2.userguide.Axis2SampleDocLitServiceStub(null,
+                    "http://localhost:8080/axis2/services/Axis2SampleDocLitService");
+                //Create the request document to be sent.
+                org.apache.axis2.userguide.xsd.EchoStringParamDocument reqDoc =
+                org.apache.axis2.userguide.xsd.EchoStringParamDocument.Factory.newInstance();
+                reqDoc.setEchoStringParam("Axis2 Echo");
+                //invokes the Web service.
+                org.apache.axis2.userguide.xsd.EchoStringReturnDocument resDoc = 
+                stub.echoString(reqDoc);
+                System.out.println(resDoc.getEchoStringReturn());
+               } catch (java.rmi.RemoteException e) {
+                  e.printStackTrace();
+              }
+</pre></source>
 
 <p>First argument of <code>Axis2SampleDocLitPortTypeStub</code> should be the
 Axis2 repository for the client. Here we use null to make the stub use
@@ -228,7 +261,29 @@
 <strong>start&lt;method-name&gt;</strong>. These methods accept a callback
 object which would be called when the response is received. Sample code that
 does an asynchronous interaction is given below.</p>
-<pre>        try {<br>            org.apache.axis2.userguide.Axis2SampleDocLitServiceStub stub = new<br>                    org.apache.axis2.userguide.Axis2SampleDocLitServiceStub(null,<br>                    "http://localhost:8080/axis2/services/Axis2SampleDocLitService");<br><br>            //implementing the callback online<br>            org.apache.axis2.userguide.Axis2SampleDocLitServiceCallbackHandler callback =<br>                    new org.apache.axis2.userguide.Axis2SampleDocLitServiceCallbackHandler() {<br><br>                public void receiveResultechoString(org.apache.axis2.userguide.xsd.EchoStringReturnDocument resDoc) {<br>                    System.out.println(resDoc.getEchoStringReturn());<br>                }<br>            };<br><br>            org.apache.axis2.userguide.xsd.EchoStringParamDocument reqDoc = <br>                    org.apache.axis2.userguide.xsd.EchoStringParamDocument.Factory.newInstance();<br>            reqDoc.setEchoStringParam("Axis2
  Echo");<br>            stub.startechoString(reqDoc, callback);<br>        } catch (java.rmi.RemoteException e) {<br>            e.printStackTrace();<br>        }<br></pre>
+<source>
+<pre>try {
+         org.apache.axis2.userguide.Axis2SampleDocLitServiceStub stub
+           = new org.apache.axis2.userguide.Axis2SampleDocLitServiceStub(null,
+             "http://localhost:8080/axis2/services/Axis2SampleDocLitService");
+             //implementing the callback online
+            org.apache.axis2.userguide.Axis2SampleDocLitServiceCallbackHandler callback =
+            new org.apache.axis2.userguide.Axis2SampleDocLitServiceCallbackHandler() {
+                    public void receiveResultechoString(
+                      org.apache.axis2.userguide.xsd.EchoStringReturnDocument resDoc) {
+                       System.out.println(resDoc.getEchoStringReturn());
+                       }
+            };
+        org.apache.axis2.userguide.xsd.EchoStringParamDocument reqDoc = 
+          org.apache.axis2.userguide.xsd.EchoStringParamDocument.Factory.newInstance();
+           reqDoc.setEchoStringParam("Axis2 Echo");
+           stub.startechoString(reqDoc, callback);
+        } catch (java.rmi.RemoteException e) {
+          e.printStackTrace();
+       }
+</pre>
+</source>
+
 
 <p>Even though the above code does a non-blocking invocation at the client
 API, the transport connection may still operate in blocking fashion. For
@@ -239,7 +294,13 @@
 the following code segment after creating the stub. These will force Axis2 to
 use two transport connections for the request and the response while the
 client uses a Callback to process the response.</p>
-<pre>stub._getServiceClient().engageModule(new QName("addressing"));<br>stub._getServiceClient().getOptions().setUseSeparateListener(true);<br></pre>
+<source>
+<pre>
+stub._getServiceClient().engageModule(new QName("addressing"));
+stub._getServiceClient().getOptions().setUseSeparateListener(true);
+</pre>
+</source>
+
 
 <p>Once those options are set, Axis2 client does the following:</p>
 <ol>
@@ -256,7 +317,19 @@
 
 <p>You could use your own repository with Axis2 Client, code below shows
 how to do this.</p>
-<pre>String axis2Repo = ...<br>String axis2xml = ...<br>ConfigurationContext configContext = <br>        ConfigurationContextFactory.createConfigurationContextFromFileSystem(axis2Repo, axis2xml);<br>Service1Stub stub1 = new Service1Stub(configContext,...);<br>//invoke Service1<br><br>Service2Stub stub2 = new Service2Stub(configContext,...);<br>//invoke Service2<br>.....<br></pre>
+<source>
+<pre>
+String axis2Repo = ...
+String axis2xml = ...
+ConfigurationContext configContext =
+ConfigurationContextFactory.createConfigurationContextFromFileSystem(axis2Repo, axis2xml);
+Service1Stub stub1 = new Service1Stub(configContext,...);
+//invoke Service1
+Service2Stub stub2 = new Service2Stub(configContext,...);
+//invoke Service2
+</pre>
+</source>
+
 
 <p>Note by creating the <code>ConfigurationContext</code> outside and
 passing it to the stubs, you could make number of stubs to use same



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