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 ru...@apache.org on 2006/05/04 20:48:03 UTC

svn commit: r399816 - /webservices/axis2/trunk/java/modules/samples/xdocs/amazonSearch/AmazonSearch.htm

Author: ruchithf
Date: Thu May  4 11:48:01 2006
New Revision: 399816

URL: http://svn.apache.org/viewcvs?rev=399816&view=rev
Log:
Fixing typos

Modified:
    webservices/axis2/trunk/java/modules/samples/xdocs/amazonSearch/AmazonSearch.htm

Modified: webservices/axis2/trunk/java/modules/samples/xdocs/amazonSearch/AmazonSearch.htm
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/modules/samples/xdocs/amazonSearch/AmazonSearch.htm?rev=399816&r1=399815&r2=399816&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/samples/xdocs/amazonSearch/AmazonSearch.htm (original)
+++ webservices/axis2/trunk/java/modules/samples/xdocs/amazonSearch/AmazonSearch.htm Thu May  4 11:48:01 2006
@@ -30,7 +30,7 @@
 <p><img src="untitled.JPG" width="550" height="384"></p>
 <p>The main method is inside the AsynchronousClient class. First it objects of LinkFollower and GUIHandler and set them as threads. Later you will understand why do we need those. Then the main program calls to the GUIHandler to display the GUI. After that, the program is running according to the events fired by the GUI. KeyListner is listening to the characters typed in the textField. When it detects a space or Enter key pressing, it sets the flag “doSearch”. Then a thread will soon detect it and reset it and send a request to search for that word. It don't use much time to send a request, but here it's done by a separate thread because it's important to isolate the GUI from internal actions. Then the user never gets interrupted in anyway. So the user can type the query terms continuously on the GUI while the program do the search for the query terms that already typed by the user and displays the results. </p>
 <p>The use of the other thread comes when the user click on a hyperlink. Then the program should open the URL in a new window. That consumes little bit time. So a separate thread is used for that. That's how we need that LinkFollower object as a Thead. </p>
-<p>Now we have two threads, one is for prepairing and sending the soap request without interrupting the user and other is to open new windows for clicked urls. But there is another important action. That is processing the received response and displaying the results. That is done in the ClientCallbackHandler. This is a important feture of InvokeNonBlocking operation of Axis2. It let you to have an additional thread in the callbackHandler class. All you have to do is sending an object of that class as a parameter when you send the message. How it is done in the programme is as follows. </p>
+<p>Now we have two threads, one is for preparing and sending the soap request without interrupting the user and other is to open new windows for clicked urls. But there is another important action. That is processing the received response and displaying the results. That is done in the ClientCallbackHandler. This is a important feature of InvokeNonBlocking operation of Axis2. It let you to have an additional thread in the callbackHandler class. All you have to do is sending an object of that class as a parameter when you send the message. How it is done in the programme is as follows. </p>
 <p><code>call.invokeNonBlocking(opdesc, requestContext, new ClientEchoCallbackHandler()); </code></p>
 <p><code><dfn>opDesc – is a QName which caries the operation name and relevant namespace. </dfn></code></p>
 <p><dfn><code>requestContext – is a MessageContext that holds the request soap envelope. </code></dfn></p>
@@ -55,7 +55,7 @@
 &lt;/tns:Search&gt;<br>
 &lt;/soapenv:Body&gt;<br>
 &lt;/soapenv:Envelope&gt;</samp></p>
-<p>ClientCallbackHandler processing response soap and extract elements which have the local name as &quot;NavigableURL&quot;. It has to work with Object Model(OM). You can notice that it uses several Iteraters to go through the children of an OMElement. You are returned and Object from the Iterater that can be casted to a OMNode. Since you can't call for the children of an OMNode we have to cast it to a OMElement. Before that we have to check it whether it is an OMElement, as follows. </p>
+<p>ClientCallbackHandler processing response soap and extract elements which have the local name as &quot;NavigableURL&quot;. It has to work with Object Model(OM). You can notice that it uses several Iterators to go through the children of an OMElement. You are returned and Object from the Iterator that can be casted to a OMNode. Since you can't call for the children of an OMNode we have to cast it to a OMElement. Before that we have to check it whether it is an OMElement, as follows. </p>
 <p><code>Iterator iterator0 = axisOperation.getChildren(); </code></p>
 <p><code>while (iterator0.hasNext()) { </code></p>
 <p><code>OMNode node = (OMNode) iterator0.next(); </code></p>