jaliya      2005/06/11 01:23:54

  Modified:    sandesha/xdocs architecture.html interopguide.html
                        navigation.xml userguide.html
               sandesha/xdocs/images ClientClass.jpg
                        ClientInitialization.png ClientTermination.png
                        EchoAsync.png EchoSync.png PingAsync.png
                        PingSync.png ServerClass.jpg
  Added:       sandesha/xdocs releases.html
  Log:
  Change the documentation to relflect the latest changes
  
  Revision  Changes    Path
  1.6       +5 -5      ws-fx/sandesha/xdocs/architecture.html
  
  Index: architecture.html
  ===================================================================
  RCS file: /home/cvs/ws-fx/sandesha/xdocs/architecture.html,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- architecture.html 25 May 2005 10:09:01 -0000      1.5
  +++ architecture.html 11 Jun 2005 08:23:54 -0000      1.6
  @@ -181,8 +181,8 @@
   <h3 style="text-align: justify;">Client Side - Initialization</h3>
   <p style="text-align: justify;">This is happening only at the first message 
of a 
   particular sequence. Web service client should initialize the reliable 
messaging 
  -environment before sending messages. This can be done by calling the 
method&nbsp; 
  -initClient(true) in the RMInitiator class. This will Initialize the Queue, 
  +environment before sending messages. This can be done by creating a 
  +SandeshaContext and adding a new sequence to it. This will Initialize the 
Queue, 
   Sender and the Client side receiver.</p>
   <p style="text-align:center">
   <img border="0" src="images/ClientInitialization.png" width="556" 
height="250"></p>
  @@ -195,8 +195,8 @@
   <p >
   This is happening only after the last message of a 
   particular sequence. Web service client should terminate the RM Environment 
  -after receiving all the messages.&nbsp; This can be done by calling the 
method&nbsp; 
  -stopClient() in the RMInitiator class. This will first check whether all the 
  +after receiving all the messages.&nbsp; This can be done by calling the 
method&nbsp;&nbsp; 
  +ctx.endSequence(call) in the SandeshaContext class. This will first check 
whether all the 
   sequence are complete with acknowledgements and then terminate the Queue, 
Sender 
   and the Client side receiver passing control back to the client.</p>
   <p style="text-align:center">
  @@ -213,7 +213,7 @@
   reference in the &lt;wsa:From&gt; address. So the sequence acknowledgements 
will be 
   sent through a new connection other than the one use for the request.</p>
   <p style="text-align:center">
  -<img border="0" src="images/PingAsync.png" width="799" height="402"></p>
  +<img border="0" src="images/PingAsync.png" width="798" height="366" ></p>
   <p style="text-align:center">
   <font size="2">Figure 7: Client Side - Request Only with Asynchronous 
   Acknowledgement</font></p>
  
  
  
  1.4       +10 -10    ws-fx/sandesha/xdocs/interopguide.html
  
  Index: interopguide.html
  ===================================================================
  RCS file: /home/cvs/ws-fx/sandesha/xdocs/interopguide.html,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- interopguide.html 10 Jun 2005 11:46:37 -0000      1.3
  +++ interopguide.html 11 Jun 2005 08:23:54 -0000      1.4
  @@ -24,29 +24,29 @@
   sure that a firewall is not blocking the response path (default port 9090) 
and 
   you may need to have a public IP address). 
   </p>
  -<h3><font size="4">With IBM implementation</font></h3>
  +<h3><font size="4">With IBM Implementation</font></h3>
   <p>Server endpoint is <a 
href="http://wsi.alphaworks.ibm.com:8080/wsrm/services/rmDemos";>http://wsi.alphaworks.ibm.com:8080/wsrm/services/rmDemos</a></p>
   <p>With IBM we have successfully interoperated both Ping and EchoString 
scenarios. 
   Classes IBMEcho, IBMAsyncPing and IBMSyncPing can be used to test the 
interoperability 
   with this endpoint. These are available in the package 
org.apache.sandesha.interop
   of the 'interop' folder.
   </p>
  -<h3><font size="4">With Microsoft implementation</font></h3>
  +<h3><font size="4">With Microsoft Implementation</font></h3>
   <p>Server endpoint is <a 
href="http://131.107.153.195/SecureReliableMessaging/ReliableOneWayDual.svc";>http://131.107.153.195/SecureReliableMessaging/ReliableOneWayDual.svc</a></p>
   <p>Sandesha interoperated with the above Ping service ednpoints available 
from Microsoft.
   Classes MicrosoftAsyncPing and MicrosoftSyncPing can be used to test the 
interoperability 
   with this endpoint. These are available in the package 
org.apache.sandesha.interop
   of the 'interop' folder.
   </p>
  -<h3><font size="4">With Systinet server</font></h3>
  +<h3><font size="4">With Systinet Server</font></h3>
   <p>Server endpoint is <a 
href="http://soap.systinet.net:6064/Service";>http://soap.systinet.net:6064/Service</a></p>
   <p>Sandesha has also proved to be interoperable with the Systinet server. 
   The client stub classes are SystinetSyncPing and SystinetAsyncPing, 
available 
   in the package org.apache.sandesha.interop  of the 'interop' folder.
   </p>
  -<h3><font size="4">Using the test client webapp</font></h3>
  +<h3><font size="4">Using Test Client webapp</font></h3>
   <p>We have created a simple web application which you can deploy on tomcat 
and 
  -test the interoperability with any available WS-RM server implementation.To 
build the webapp, 
  +test the interoperability with any available WS-RM server implementation. To 
build the webapp, 
   </p>
   <p>Make sure that you have Apache Ant installed in your system. After this 
go to the the 
   folder 'interop' in command prompt and type,</p>
  @@ -54,21 +54,21 @@
   <source>ant war</source>
   </p>
   <p>
  -This will create the sandesha-interop.war file in the subfolder 'dist/war'. 
Copy this 
  +This will create the sandesha-interop.war file in the subfolder 
'target/dist/war'. Copy this 
   to the webapps folder of tomcat and start the tomcat server. Now you are 
ready to run
   the Sandesha interop client. Start your web browser and go to URL <a 
href="http://localhost:8080/sandesha-interop/interop.jsp";>http://localhost:8080/sandesha-interop/interop.jsp</a>
   This should show you the interop client web page.
   </p>
   <p>
  -Most of the fields in this web page are self-explanaitory. First you can set 
the 
  +Most of the fields in this web page are self-explanatory. First you can set 
the 
   target field to any valid target URL. After this choose the operation Ping 
or echoString accordingly. 
  -The AcksTo field represents the wsrm:acksTo value. If acksTo is anonymous 
the 
  +The AcksTo field represents the &lt;wsrm:AcksTo&gt; value. If ScksTo is 
anonymous the 
   acknowledgements will be sent in a synchronous path. You can also set the 
  -fields From, To and ReplyTo which represent wsa:from, wsa:to and wsa:replyTo 
respectively. ReplyTo should say where you expect to receive applications 
responses. 
  +fields From, To and ReplyTo which represent &lt;wsa:From&gt;, &lt;wsa:To&gt; 
and &lt;wsa:ReplyTo&gt; respectively. ReplyTo should say where you expect to 
receive applications responses. 
   FaultTo URL should point to the location you expect to receive faults.
   Finally you can mention weather the client should send a sequence offer 
which 
   is the sequence id of the response path, and the number of application 
messages you wish to send to the server.
   </p>
   
   </body>
  -</html>
  +</html>
  \ No newline at end of file
  
  
  
  1.5       +24 -12    ws-fx/sandesha/xdocs/navigation.xml
  
  Index: navigation.xml
  ===================================================================
  RCS file: /home/cvs/ws-fx/sandesha/xdocs/navigation.xml,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- navigation.xml    26 May 2005 09:58:29 -0000      1.4
  +++ navigation.xml    11 Jun 2005 08:23:54 -0000      1.5
  @@ -1,14 +1,26 @@
  -<!-- Created By Eran Chinthaka -->
   <project name="Sandesha">
  -  <title>Sandesha</title>
  -  <body>
  +   <title>Sandesha</title>
  +
  +   <body>
  +      <menu name="Apache Sandesha">
  +         <item name="User Guide" href="userguide.html" />
  +
  +         <item name="Architecture Guide" href="architecture.html" />
  +
  +         <item name="Interop Guide" href="interopguide.html" />
  +
  +         <item name="Downloads">
  +            <item name="Releases" href="releases.html" />
  +            <item name="Source Code" 
href="http://svn.apache.org/viewcvs.cgi/webservices/axis/trunk/?root=Apache-SVN";
 />
  +         </item>
  +         <item name="Project Information">
  +             <item name="Mailing Lists" href="mail-lists.html" /> 
  +             <item name="Project Team" href="team-list.html" />
  +             <item name="Issue Tracking" href="issue-tracking.html" /> 
  +      </item> 
        
  -    <menu name="Sandesha">
  -             <item name="Simple User Guide" href="userguide.html"/>
  -             <item name="Architecture Guide" href="architecture.html"/>
  -                <item name="Interop Guide" href="interopguide.html"/>
  -    </menu>
  -     
  -    
  -  </body>
  -</project>
  \ No newline at end of file
  +         
  +      </menu>
  +   </body>
  +</project>
  +
  
  
  
  1.8       +169 -203  ws-fx/sandesha/xdocs/userguide.html
  
  Index: userguide.html
  ===================================================================
  RCS file: /home/cvs/ws-fx/sandesha/xdocs/userguide.html,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- userguide.html    10 Jun 2005 11:46:37 -0000      1.7
  +++ userguide.html    11 Jun 2005 08:23:54 -0000      1.8
  @@ -15,81 +15,56 @@
   <p>This document&nbsp; will guide you through the configuration of Sandesha 
and finally 
   to run the sample scenarios.</p>
   <h2><font size="5">Configuration</font></h2>
  -<p>Configuration of Apache Sandesha can be described in three steps.</p>
  -<ul type="square">
  -  <li>Checkout the code</li>
  -  <li>Run the Maven (Compile)</li>
  -  <li>use <font color="#FF0000">&nbsp;</font>Sandesha-1.0.jar </li>
  -</ul>
  -<p>So as the first step let's focus on how to configure Sandesha and run the 
  -sample tests. Following steps will guide you through the process.</p>
  -<h3><font size="4">Check out Sandesha</font></h3>
  -<p>Apache Sandesha is available for download as source. Please follow the 
CVS 
  -instruction to download the code
  -<a href="http://ws.apache.org/ws-fx/sandesha/cvs-usage.html";>
  -http://ws.apache.org/ws-fx/sandesha/cvs-usage.html</a></p>
  -<h3>Build Using Apache Maven</h3>
  -<p>Once you have the so</p>
  -<p>Note : Sandesha build process is done using Apache Maven. So assume that 
the 
  -user has already configured Maven in his machine. </p>
  -<p>Build process is mainly to run a single Maven command and it is</p>
  -<p>
  -<source>maven</source></p>
  -<p>Once the build process is completed you&nbsp; can find 
<b>Sandesha-1.0.jar</b> 
  -under target directory. </p>
  -<p>Ok now let us see how we can use Sandesha in the client side of your 
  -application and also in the server side. The following section of this user 
  -guide will explain them in details.</p>
  +<p>Sandesha can be downloaded as <font color="#FF0000">binary</font> or
  +<font color="#FF0000">source</font> distributions. This document assumes 
that 
  +the user has downloaded the binary distribution, however if you have 
downloaded 
  +the source distribution, you can create the binaries using the maven command 
  +&quot;maven dist-bin&quot;.</p>
  +<p>Following steps will guide to configure Apache Sandesha on both client 
and 
  +server sides.</p>
   <h2><font size="5">Use Sandesha in the Client Side</font></h2>
  -<p>Following two steps will enable the usage of Sandesha in the Client Side. 
  -(Assume that you have build Sandesha using Maven)</p>
  +<p>Following two steps will enable the usage of Sandesha in the Client 
Side.</p>
   <ul type="square">
  -  <li>Copy the <b>Sandesha-1.0.jar</b> to your class path</li>
  -  <li>Copy the <b>config/client-config.wsdd</b> to the class path of your 
  -  client. </li>
  +  <li>Copy the <b>Sandesha-beta.jar</b> to your classpath (this jar can be 
found 
  +  in the root directory of the unzipped binary distribution)</li>
  +  <li>Add the jars in the &quot;lib&quot; directory of the binary 
distribution to your 
  +  classpath.</li>
   </ul>
  -<p>To enable Sandesha in the client side, the only requirement is to use 
  -<b>RMTransport</b> as the transport in the <b>client-config.wsdd.</b> If you 
  -copy the <b>client-config.wsdd</b> found under config directory 
  -then it is already configured with this property and ready to use.</p>
  -<p>Note: please add the jars, that are there in the target/lib to your class 
  -path.</p>
   <p>There are two main ways that one can use axis to write web service client 
   applications.</p>
   <ol>
     <li>1. Using Generated Stubs</li>
     <li>2. Using Dynamic Invocation Interface (DII)</li>
   </ol>
  -<p>At the moment when you generate the stubs there is no way that we can 
inform 
  +<p>At the moment when we generate the stubs there is no way that we can 
inform 
   the apache tool (wsdl2java) to generate stubs that are Sandesha aware and 
hence 
   we need to use the DII in order to use Sandesha in the client side. However 
if 
  -there are existing stubs, then to use Sandesha with them then the user has 
to 
  -manually edit the stubs generated to insert some properties to the call 
object. 
  -We will see one example of this nature as well.</p>
  +there are existing stubs, then to use Sandesha with them&nbsp; the user has 
to 
  +manually edit the stubs generated to insert properties to the call 
object.</p>
   <h3>Simple  Request-Response&nbsp;Client</h3>
  -<p>To simply use Sandesha in the client side, user has to add few lines to 
the 
  +<p>To  use Sandesha in the client side, user has to add few lines to the 
   existing client. Following code fragment shows the required additions that 
one 
   should make. </p>
  -<p><source>public static void main(String[] args) {
  -try {
  -Service service = new Service();
  -Call call = (Call) service.createCall();
  -<span style="background-color: #CCCCCC">SandeshaContext ctx = new 
SandeshaContext();</span>
  -<span style="background-color: #CCCCCC">ctx.addNewSequeceContext(call, 
targetUrl,
  -                      
"urn:wsrm:echoString",Constants.ClientProperties.IN_OUT);</span>
  -call.setOperationName(new QName("http://tempuri.org/";, "echoString"));
  -call.addParameter("Text", XMLType.XSD_STRING, ParameterMode.IN);
  -call.addParameter("Seq", XMLType.XSD_STRING, ParameterMode.IN);
  -call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);
  -
  -<span style="background-color: #CCCCCC">ctx.setLastMessage(call);</span>
  -String ret = (String) call.invoke(new Object[]{"Sandesha Echo 1", "abcdef"});
  -System.out.println("The Response for First Messsage is :" + ret);
  -
  -<span style="background-color: #CCCCCC">ctx.endSequence(call);</span>
  -} catch (Exception e) { e.printStackTrace();
  -}
  -}</source></p>
  +<source><pre>public static void main(String[] args) {
  +     try {
  +     Service service = new Service();
  +     Call call = (Call) service.createCall();
  +     <span style="background-color: #CCCCCC">SandeshaContext ctx = new 
SandeshaContext();</span>
  +     <span style="background-color: #CCCCCC">ctx.addNewSequeceContext(call, 
targetUrl,</span>
  +     <span style="background-color: 
#CCCCCC">"urn:wsrm:echoString",Constants.ClientProperties.IN_OUT);</span>
  +     call.setOperationName(new QName("http://tempuri.org/";, "echoString"));
  +     call.addParameter("Text", XMLType.XSD_STRING, ParameterMode.IN);
  +     call.addParameter("Seq", XMLType.XSD_STRING, ParameterMode.IN);
  +     call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);
  +
  +     <span style="background-color: #CCCCCC">ctx.setLastMessage(call);</span>
  +     String ret = (String) call.invoke(new Object[]{"Sandesha Echo 1", 
"abcdef"});
  +     System.out.println("The Response for First Messsage is :" + ret);
  +
  +     <span style="background-color: #CCCCCC">ctx.endSequence(call);</span>
  +     } catch (Exception e) { e.printStackTrace();
  +     }
  +}</pre></source></p>
   <h4>Explanation on Additions :</h4>
   <p>
   <span style="font-weight: 700; background-color: #CCCCCC">SandeshaContext 
ctx = new SandeshaContext();</span></p>
  @@ -131,27 +106,27 @@
   messaging operation. Again the following code fragment will explain the 
   additional code lines required. For this we use a client that will invoke a 
   service 3 times. (This for the explanation purpose only)</p>
  -<p><source>public static void main(String[] args) {
  -try {
  -Service service = new Service();
  -Call call = (Call) service.createCall();
  -
  -SandeshaContext ctx = new SandeshaContext();
  -ctx.addNewSequeceContext(call,targetUrl ,
  -                    "urn:wsrm:Ping", Constants.ClientProperties.IN_ONLY);
  -call.setOperationName(new QName("http://tempuri.org/";, "ping"));
  -call.addParameter("arg1", XMLType.XSD_STRING, ParameterMode.IN);
  +<source><pre>public static void main(String[] args) {
  +     try {
  +     Service service = new Service();
  +     Call call = (Call) service.createCall();
  +
  +     SandeshaContext ctx = new SandeshaContext();
  +     ctx.addNewSequeceContext(call,targetUrl ,
  +                     "urn:wsrm:Ping", Constants.ClientProperties.IN_ONLY);
  +     call.setOperationName(new QName("http://tempuri.org/";, "ping"));
  +     call.addParameter("arg1", XMLType.XSD_STRING, ParameterMode.IN);        
               
  -call.invoke(new Object[]{"Sandesha Ping 1"});
  -call.invoke(new Object[]{"Sandesha Ping 2"});
  -ctx.setLastMessage(call);
  -call.invoke(new Object[]{"Sandesha Ping 3"});
  -ctx.endSequence(call);
  -
  -} catch (Exception e) {
  -   e.printStackTrace();
  -}
  -}</source></p>
  +     call.invoke(new Object[]{"Sandesha Ping 1"});
  +     call.invoke(new Object[]{"Sandesha Ping 2"});
  +     ctx.setLastMessage(call);       
  +     call.invoke(new Object[]{"Sandesha Ping 3"});
  +     ctx.endSequence(call);
  +
  +     } catch (Exception e) {
  +        e.printStackTrace();
  +     }
  +}</pre></source></p>
   
   <p>As it can be seen, we need the same additions as above and the 
explanations 
   are the same.</p>
  @@ -161,29 +136,28 @@
   <p>In this scenario we will look at how Sandesha can be used in a one-way 
   messaging operation using same transport channel to get 
acknowledgements.&nbsp; For this we use a client that will invoke a 
   service 3 times. (This for the explanation purpose only)</p>
  -<p><source>
  -public static void main(String[] args) {
  -try {
  -Service service = new Service();
  -Call call = (Call) service.createCall();
  -
  -SandeshaContext ctx = new SandeshaContext();
  -<span style="background-color: 
#CCCCCC">ctx.addNewSequeceContext(call,targetUrl ,
  -        "urn:wsrm:Ping", Constants.ClientProperties.IN_ONLY,</span><span 
style="background-color: #FFFF99">true</span>);
  -
  -call.setOperationName(new QName("http://tempuri.org/";, "ping"));
  -call.addParameter("arg1", XMLType.XSD_STRING, ParameterMode.IN);
  -
  -call.invoke(new Object[]{"Sandesha Ping 1"});
  -call.invoke(new Object[]{"Sandesha Ping 2"});
  -ctx.setLastMessage(call);
  -call.invoke(new Object[]{"Sandesha Ping 3"});
  -ctx.endSequence(call);
  -
  -} catch (Exception e) {
  -   e.printStackTrace();
  -}
  -}</source></p>
  +<source><pre>public static void main(String[] args) {
  +     try {
  +     Service service = new Service();
  +     Call call = (Call) service.createCall();
  +
  +     SandeshaContext ctx = new SandeshaContext();
  +     <span style="background-color: 
#CCCCCC">ctx.addNewSequeceContext(call,targetUrl ,</span>
  +             <span style="background-color: #CCCCCC">"urn:wsrm:Ping", 
Constants.ClientProperties.IN_ONLY,</span><span style="background-color: 
#FFFF99">true</span>);
  +
  +     call.setOperationName(new QName("http://tempuri.org/";, "ping"));
  +     call.addParameter("arg1", XMLType.XSD_STRING, ParameterMode.IN);
  +
  +     call.invoke(new Object[]{"Sandesha Ping 1"});
  +     call.invoke(new Object[]{"Sandesha Ping 2"});
  +     ctx.setLastMessage(call);
  +     call.invoke(new Object[]{"Sandesha Ping 3"});
  +     ctx.endSequence(call);
  +
  +     } catch (Exception e) {
  +             e.printStackTrace();
  +     }
  +}</pre></source></p>
   
   <p>The only change we need is to set the flag &quot;sync&quot; to 
&quot;true&quot; when we add the 
   sequence to SandeshaContext, as shown bellow.</p>
  @@ -209,13 +183,12 @@
   way) to get the correct functionality. Following code fragment contains all 
the 
   parameters that the client can set inside the client code.</p>
   
  -<p><source>
  -ctx.setToUrl(call, 
"http://test.organization.com:8080/wsrm/services/rmDemos";);
  -ctx.setFromUrl(call, 
"http://our.organization.org:9070/axis/services/RMService";);
  -ctx.setReplyToUrl(call, 
"http://our.organization.org:9070/axis/services/RMService";);
  -ctx.setAcksToUrl(call, 
"http://our.organization.org:9070/axis/services/RMService";);
  -ctx.setFaultToUrl(call, 
"http://our.organization.org:9070/axis/services/RMService";);
  -ctx.setSendOffer(call);</source></p>
  +<source><pre>        ctx.setToUrl(call, 
"http://test.organization.com:8080/wsrm/services/rmDemos";);
  +     ctx.setFromUrl(call, 
"http://our.organization.org:9070/axis/services/RMService";);
  +     ctx.setReplyToUrl(call, 
"http://our.organization.org:9070/axis/services/RMService";);
  +     ctx.setAcksToUrl(call, 
"http://our.organization.org:9070/axis/services/RMService";);
  +     ctx.setFaultToUrl(call, 
"http://our.organization.org:9070/axis/services/RMService";);
  +     ctx.setSendOffer(call);</pre></source></p>
   
   <p>These properties are very useful when debugging applications. By changing 
   them appropriately the user can route messages through TCP Monitor or some 
  @@ -236,93 +209,93 @@
   operations are in the same service &quot;RMInteropService&quot; as two 
different 
   operations. However these need NOT be operations of a single service.</p>
   
  -<p><source>
  -public void testEchoPing() throws Exception {
  -System.out.println("===========Echo and Ping Combined Test 
Started=============");
  -UUIDGen uuidGen = UUIDGenFactory.getUUIDGen(); //Can use this for continuous 
testing.
  -String str = uuidGen.nextUUID();
  -
  -Service service = new Service();
  -Call echoCall = (Call) service.createCall();
  -
  -SandeshaContext ctx = new SandeshaContext();
  -//------------------------ECHO------------------------------------------
  -ctx.addNewSequeceContext(echoCall, targetURL, "urn:wsrm:echoString",
  -                Constants.ClientProperties.IN_OUT);
  -ctx.setAcksToUrl(echoCall,
  -        "http://127.0.0.1:"; + defaultClientPort + 
"/axis/services/RMService");
  -ctx.setReplyToUrl(echoCall,
  -         "http://127.0.0.1:"; + defaultClientPort + 
"/axis/services/RMService");
  -ctx.setSendOffer(echoCall);
  -
  -echoCall.setOperationName(new QName("http://tempuri.org/";, "echoString"));
  -
  -echoCall.addParameter("arg1", XMLType.XSD_STRING, ParameterMode.IN);
  -echoCall.addParameter("arg2", XMLType.XSD_STRING, ParameterMode.IN);
  -echoCall.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);
  -//----------------------ECHO----------------------------------------------
  -
  -//------------------------PING--------------------------------------------
  -Call pingCall = (Call) service.createCall();
  -ctx.addNewSequeceContext(pingCall, targetURL, "urn:wsrm:Ping",
  -      Constants.ClientProperties.IN_ONLY);
  -ctx.setAcksToUrl(pingCall,
  -     "http://127.0.0.1:"; + defaultClientPort + "/axis/services/RMService");
  -
  -pingCall.setOperationName(new QName("http://tempuri.org/";, "ping"));
  -pingCall.addParameter("arg2", XMLType.XSD_STRING, ParameterMode.IN);
  -//----------------------PING----------------------------------------------
  -
  -String ret = (String) echoCall.invoke(new Object[]{"Sandesha Echo 1", str});
  -System.out.println("The Response for First Messsage is  :" + ret);
  -pingCall.invoke(new Object[]{ret});
  -
  -ret = (String) echoCall.invoke(new Object[]{"Sandesha Echo 2", str});
  -System.out.println("The Response for Second Messsage is  :" + ret);
  -pingCall.invoke(new Object[]{ret});
  -
  -ctx.setLastMessage(echoCall);
  -ret = (String) echoCall.invoke(new Object[]{"Sandesha Echo 3", str});
  -System.out.println("The Response for Third Messsage is  :" + ret);
  -ctx.setLastMessage(pingCall);
  -pingCall.invoke(new Object[]{ret});
  -
  -RMReport echoReport = ctx.endSequence(echoCall);
  -RMReport pingReport=ctx.endSequence(pingCall);
  -
  -assertEquals(echoReport.isAllAcked(), true);
  -assertEquals(echoReport.getNumberOfReturnMessages(), 3);
  -
  -assertEquals(pingReport.isAllAcked(), true);
  -assertEquals(pingReport.getNumberOfReturnMessages(), 0);
  -System.out.println("===========Echo and Ping Combined Test 
Finished==========");
  +<p><source><pre>public void testEchoPing() throws Exception {
  +     System.out.println("===========Echo and Ping Combined Test 
Started=============");
  +     UUIDGen uuidGen = UUIDGenFactory.getUUIDGen(); //Can use this for 
continuous testing.
  +     String str = uuidGen.nextUUID();
  +
  +     Service service = new Service();
  +     Call echoCall = (Call) service.createCall();
  +
  +     SandeshaContext ctx = new SandeshaContext();
  +     //------------------------ECHO------------------------------------------
  +     ctx.addNewSequeceContext(echoCall, targetURL, "urn:wsrm:echoString",
  +                 Constants.ClientProperties.IN_OUT);
  +     ctx.setAcksToUrl(echoCall,
  +         "http://127.0.0.1:"; + defaultClientPort + 
"/axis/services/RMService");
  +     ctx.setReplyToUrl(echoCall,
  +          "http://127.0.0.1:"; + defaultClientPort + 
"/axis/services/RMService");
  +     ctx.setSendOffer(echoCall);
  +
  +     echoCall.setOperationName(new QName("http://tempuri.org/";, 
"echoString"));
  +
  +     echoCall.addParameter("arg1", XMLType.XSD_STRING, ParameterMode.IN);
  +     echoCall.addParameter("arg2", XMLType.XSD_STRING, ParameterMode.IN);
  +     echoCall.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);
  +     
//----------------------ECHO----------------------------------------------
  +
  +     
//------------------------PING--------------------------------------------
  +     Call pingCall = (Call) service.createCall();
  +     ctx.addNewSequeceContext(pingCall, targetURL, "urn:wsrm:Ping",
  +           Constants.ClientProperties.IN_ONLY);
  +     ctx.setAcksToUrl(pingCall,
  +      "http://127.0.0.1:"; + defaultClientPort + "/axis/services/RMService");
  +
  +     pingCall.setOperationName(new QName("http://tempuri.org/";, "ping"));
  +     pingCall.addParameter("arg2", XMLType.XSD_STRING, ParameterMode.IN);
  +     
//----------------------PING----------------------------------------------
  +
  +     String ret = (String) echoCall.invoke(new Object[]{"Sandesha Echo 1", 
str});
  +     System.out.println("The Response for First Messsage is  :" + ret);
  +     pingCall.invoke(new Object[]{ret});
  +
  +     ret = (String) echoCall.invoke(new Object[]{"Sandesha Echo 2", str});
  +     System.out.println("The Response for Second Messsage is  :" + ret);
  +     pingCall.invoke(new Object[]{ret});
  +
  +     ctx.setLastMessage(echoCall);
  +     ret = (String) echoCall.invoke(new Object[]{"Sandesha Echo 3", str});
  +     System.out.println("The Response for Third Messsage is  :" + ret);
  +     ctx.setLastMessage(pingCall);
  +     pingCall.invoke(new Object[]{ret});
  +
  +     RMReport echoReport = ctx.endSequence(echoCall);
  +     RMReport pingReport=ctx.endSequence(pingCall);
  +
  +     assertEquals(echoReport.isAllAcked(), true);
  +     assertEquals(echoReport.getNumberOfReturnMessages(), 3);
  +
  +     assertEquals(pingReport.isAllAcked(), true);
  +     assertEquals(pingReport.getNumberOfReturnMessages(), 0);
  +     System.out.println("===========Echo and Ping Combined Test 
Finished==========");
   
   }
  -</source></p>
  +</pre></source></p>
   
   <p>Note: Samples of all these scenarios are available in the 
&quot;interop&quot; 
   directory. Sample of invoking two web services in a same client is available 
as 
   a test case in the &quot;test&quot; directory.</p>
   
   <h2><font size="5">To Use Sandesha in the Server Side</font></h2>
  -<p>This can again be done using two steps.</p>
  -<p>Assume that axis is configured in Tomcat Server </p>
  +<p>Sandesha configuration in the server side can be explained using two 
simple 
  +steps. (Assume that axis is configured in Tomcat Server)</p>
   <ul type="square">
  -  <li>Copy the <b>Sandesha-1.0.jar</b> to the 
<b>CATALINA_HOME/webapps/axis/WEB-INF/lib</b> along 
  -with the other new jars that can be found in <b>target/lib</b> directory of 
Sandesha.</li>
  +  <li>Copy the <b>Sandesha-beta.jar</b> to the 
<b>CATALINA_HOME/webapps/axis/WEB-INF/lib</b> along 
  +with the other new jars that can be found in <b>lib</b> directory of 
Sandesha. 
  +  (If you are using the Axis1.2 release, then the user have to copy only the 
  +  &quot;addressing-SNAPTSHOT.jar&quot; additionally)</li>
     <li>To configure Sandesha for a particular service( say MyService) change 
the 
     <b>deploy.wsdd</b> of <b>&nbsp;MyService</b> according to the 
following.</li>
   </ul>
   <p>Note that we have to change the provider to <b>RMProvider</b> and need to 
add two 
  -request handlers. A sample of this <b>deploy.wsdd</b> can be found in the 
interop 
  -directory named <b>RMInteropServiceDeploy</b> with the required bat file to 
deploy the 
  -service. (make sure that the classes for the <b>MyService</b> is copied to 
  -<b>CATALINA_HOME/webapps/axis/WEB-INF/classes. RMProvider</b> by default 
will 
  +request handlers. A sample of this <b>deploy.wsdd</b> can be found in the 
sample 
  +directory named <b>RMSampleServiceDeploy</b> with the required bat file to 
deploy the 
  +service. (make sure that the classes for the <b>MyService</b> is copied to 
<b>CATALINA_HOME/webapps/axis/WEB-INF/classes. RMProvider</b> by default will 
   use the <b>RPCProvider</b> to invoke the services, however user can specify 
the 
  -actual provider that is required to invoke a particular service in <b>
  -sandesha.properties</b> file that can be found in <b>config</b> 
directory.</p>
  +actual provider that is required to invoke a particular service in 
<b>sandesha.properties</b> file that can be found in
  +<b>Sandesha-beta.jar</b>.</p>
   
  -<p><source>&lt;deployment xmlns=&quot;http://xml.apache.org/axis/wsdd/&quot; 
  +<source><pre>&lt;deployment 
xmlns=&quot;http://xml.apache.org/axis/wsdd/&quot; 
   xmlns:java=&quot;http://xml.apache.org/axis/wsdd/providers/java&quot;&gt;
   &nbsp;&lt;service name=&quot;MyService&quot; provider=&quot;Handler&quot;&gt;
   &lt;requestFlow&gt;
  @@ -334,7 +307,7 @@
   &lt;parameter name=&quot;allowedMethods&quot; value=&quot;*&quot;/&gt;
   &lt;parameter name=&quot;scope&quot; value=&quot;request&quot;/&gt;
   &lt;/service&gt;
  -&lt;/deployment&gt;</source></p>
  +&lt;/deployment&gt;</pre></source></p>
   
   <h3>Using RMSource Inside a Server</h3>
   
  @@ -348,7 +321,7 @@
   in the same server with &quot;RMClientProvider as the provider. This 
behavior can 
   easily obtained using a deployment descriptor as shown below. </p>
   
  -<p><source>&lt;deployment xmlns=&quot;http://xml.apache.org/axis/wsdd/&quot; 
  +<source><pre>&lt;deployment 
xmlns=&quot;http://xml.apache.org/axis/wsdd/&quot; 
   xmlns:java=&quot;http://xml.apache.org/axis/wsdd/providers/java&quot;&gt;
   &lt;service name=&quot;MyService&quot; provider=&quot;java:RPC&quot;&gt;
   &lt;parameter name=&quot;className&quot; 
value=&quot;samples.userguide.example3.MyService&quot;/&gt;
  @@ -367,7 +340,7 @@
   &lt;parameter name=&quot;scope&quot; value=&quot;request&quot;/&gt;
   &lt;/service&gt;
   &lt;/deployment&gt;
  -&nbsp;</source></p>
  +&nbsp;</pre></source></p>
   
   <p>In this deployment descriptor &quot;MyService&quot; is the web service 
that behaves as 
   a client for some other service. (MyService is invoking some other web 
service 
  @@ -390,23 +363,18 @@
   
   <h2>Running Samples </h2>
   
  -<h3>Build the Sample Classes</h3>
  -<p>Note : Sandesha build process is done using Apache Maven. So assume that 
the 
  -user has already configured Maven in his machine. 
  -Build process is mainly to run a single Maven command and it is</p>
  -<p>
  -<source>maven</source></p>
  -<p>Since we need the samples also to be build we need one more command 
(Let's 
  -use the interop samples)</p>
  -<p>
  -<source>maven interop:compile</source></p>
  -<p>If you need a project to be created for eclipse or Intellij IDEA use the 
  +<p>If you are using the binary distribution of Sandesha then the samples are 
  +already built and inside the Sandesha-beta.jar itself. Therefore the testing 
is 
  +just matter of executing some ant targets provided in the 
&quot;build.xml&quot; file in 
  +the samples directory. If you have downloaded the source distribution and 
need 
  +to run the samples, please build the source first using the maven.</p>
  +<p>If you need a project to be created for Eclipse or Intellij IDEA use the 
   maven commands</p>
   <p>
   <source>maven eclipse</source> </p>
   <p><source>maven idea</source> </p>
  -<h3><font size="4">Run the Inter-op Samples</font></h3>
  -<p>Go to the directory, interop under the main directory tree. To run the 
sample 
  +<h3><font size="4">Run the&nbsp; Samples</font></h3>
  +<p>Go to the directory, samples under the main directory tree. To run the 
sample 
   scenarios we only need to type simple ant commands in a command line.</p>
   <p>Followings are the commands to run the samples scenarios.</p>
   <table border="1" cellpadding="0" cellspacing="0" style="border-collapse: 
collapse" bordercolor="#111111" width="100%">
  @@ -438,10 +406,8 @@
   different HTTP Connections.</td>
     </tr>
   </table>
  -<p>In all these scenarios the service <b>RMInteropService</b> is deployed in 
a
  -<b>SimpleAxisServer</b> using the ant script and the results will be shown 
in TCP 
  -monitors. Please check whether the java processes that is used to invoke TCP 
  -monitors are not running in the back ground, before every test.</p>
  +<p>In all these scenarios the service <b>RMSampleService</b> is deployed in 
a <b>SimpleAxisServer</b> 
  +using the ant script and the results will be shown in TCP monitors. </p>
   <p>&nbsp;</p>
   <p>&nbsp;</p>
   <p>&nbsp;</p>
  
  
  
  1.1                  ws-fx/sandesha/xdocs/releases.html
  
  Index: releases.html
  ===================================================================
  <title>Releases</title><h2>Releases</h2>
  <div align="center">
        <table border="1" style="border-collapse: collapse" width="76%" 
id="table1">
                <tr>
                        <td width="45" align="center">Name</td>
                        <td width="246" align="center">Distribution</td>
                        <td width="100" align="center">Date</td>
                        <td width="333" align="center">Description</td>
                </tr>
                <tr>
                        <td width="45" align="center" valign="middle"><div 
align="center"><a name="M1"></a>
                beta </div></td>
                        <td width="246"> <p>Source Distribution <a 
href="http://cvs.apache.org/dist/axis/v2.0-M1/axis2-M1-src.zip";>zip</a><br>
                    Binary Distribution <a 
href="http://cvs.apache.org/dist/axis/v2.0-M1/axis2-M1-bin.zip";>zip</a> 
<br>&nbsp;</p>
                          </td>
                        <td width="100"><div align="center">24 - 02 - 2005  
</div></td>
                        <td>&nbsp;Beta Release</td>
                </tr>
        </table>
  </div>
  
  
  1.2       +155 -124  ws-fx/sandesha/xdocs/images/ClientClass.jpg
  
        <<Binary file>>
  
  
  1.2       +86 -22    ws-fx/sandesha/xdocs/images/ClientInitialization.png
  
        <<Binary file>>
  
  
  1.2       +95 -42    ws-fx/sandesha/xdocs/images/ClientTermination.png
  
        <<Binary file>>
  
  
  1.2       +188 -69   ws-fx/sandesha/xdocs/images/EchoAsync.png
  
        <<Binary file>>
  
  
  1.2       +201 -70   ws-fx/sandesha/xdocs/images/EchoSync.png
  
        <<Binary file>>
  
  
  1.2       +109 -95   ws-fx/sandesha/xdocs/images/PingAsync.png
  
        <<Binary file>>
  
  
  1.2       +88 -89    ws-fx/sandesha/xdocs/images/PingSync.png
  
        <<Binary file>>
  
  
  1.2       +306 -261  ws-fx/sandesha/xdocs/images/ServerClass.jpg
  
        <<Binary file>>
  
  

Reply via email to