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 ro...@apache.org on 2004/07/05 11:33:38 UTC

cvs commit: ws-axis/c/docs/windows/cpp windev-guide.html

roshan      2004/07/05 02:33:38

  Modified:    c/docs/windows/cpp windev-guide.html
  Log:
  Made the Windows Developers Guide more user friendly.Changed by Rangika
  
  Revision  Changes    Path
  1.9       +99 -103   ws-axis/c/docs/windows/cpp/windev-guide.html
  
  Index: windev-guide.html
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/docs/windows/cpp/windev-guide.html,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- windev-guide.html	16 Jun 2004 04:56:04 -0000	1.8
  +++ windev-guide.html	5 Jul 2004 09:33:38 -0000	1.9
  @@ -49,12 +49,13 @@
   <a href="#parser">Creating and Building your own parser</a>
   
   </p>
  -<p> <b>Before you follow this guide, make sure that you have followed the </b><a href="winuser-guide.html"><b>Windows User Guide</a> also knows how to use binaries.</b></p>
  +<p> <b>Before going through this guide, please go through the </b><a href="winuser-guide.html"><b>Windows User Guide</b></a> <b> and also be familiar with how to use binaries.</b></p>
   
   <p>
   <a name="buildaxis"></a></p>
   
  -<h1>Building and Deploying Axis C++</h1>
  +<h1>
  + Axis C++</h1>
   
   <p>
   <a name="cvscheckout"></a></p>
  @@ -64,10 +65,10 @@
   
   
   <p>Visit <a href="#http://ws.apache.org/">http://ws.apache.org/</a> Click on �axis� and then on �CVS Repository�
  -to find details on accessing the CVS Repository. It will have instructions
  +to find details on how to access the CVS Repository. It will have instructions
   similar to the following.<br>
   <br>
  -�Anyone can checkout source code from our anonymous CVS server. To do so,
  +�Anyone can checkout the source code from our anonymous CVS server. To do so,
   simply use the following commands (if you are using a GUI CVS client,
   configure it appropriately): <br>
   
  @@ -78,15 +79,15 @@
   <br>
   cvs -d :pserver:anoncvs@cvs.apache.org:/home/cvspublic checkout ws-axis<br>
   <br>
  -The examples given below will be based on these lines of instructions.<br>
  +The examples given below are based on these lines of instructions.<br>
   <br>
   To use the command line cvs client go to http://www.cvshome.org, click on the
  -"CVS Downloads" link. In the resulting page there will be a link named
  -"historical download pages", under the heading "CVS downloads", where you can
  +"CVS Downloads" link.In the resulting page under the heading "CVS downloads",there will be a link named
  +"historical download pages", where you can
   download the cvs binaries for Windows. Download the Windows cvs binaries.
  -Extract the cvs binaries from the downloaded zip file. There will be a
  -�cvs.exe� file when this is extracted. Set the PATH environment variable to
  -where �cvs.exe� is.<br>
  +Extract the cvs binaries from the downloaded zip file.When this is extracted there will be a
  +�cvs.exe� file . Set the PATH environment variable to
  + �cvs.exe� <br> <br>
   You would have to do the following to get a checkout from the command line
   cvs client.<br>
   <br>
  @@ -101,7 +102,7 @@
   The checkout of the repository will be created in the current directory in a
   folder named �ws-axis�<br>
   <br>
  -The checked out folder ws-axis will be referred to as [CHECKOUT_HOME] from
  +The checked out folder ws-axis will be referred as [CHECKOUT_HOME] from
   this point on.<br></p>
   
   <p><a name="getapacheexpat"></a></p>
  @@ -121,7 +122,7 @@
   
   
   <P><b>Apache Web Server</b></p>
  -
  +<br>
   <p>Download the Apache web server from www.apache.org. Currently Axis supports
   apache 1.3.x and 2.X. This documentation was tested with Apache 1.3.28 and
   Apache 2.0.44.</p>
  @@ -137,14 +138,14 @@
   <br>
   <p>Run the file
   expat_win32bin_1_95_7.exe . The folder to which Expat is unzipped will be
  -referred to as [EXPAT_EXTRACT] from this point onwards.</p>
  +referred as [EXPAT_EXTRACT] from this point onwards.</p>
   
   <br>
   <p><b>Apache</b></p>
   <br>
   <p>Install the Apache web server. By default Apache 1.3.X is installed in
   "C:\Program Files\Apache Group\Apache" and Apache 2.X in "C:\Program
  -Files\Apache Group\Apache2". These locations will be referred to as [APACHE_HOME]
  +Files\Apache Group\Apache2". These locations will be referred  as [APACHE_HOME]
   from this point onwards.</p>
   
   
  @@ -154,42 +155,44 @@
   <p><a name="setupandbuildaxis"></a></p>
   
   <h2>Setting up the build environment and building Axis</h2>
  +<br>
   
  -
  -<p>1)Copy [EXPAT_EXTRACT]\source\lib\expat.h from expat binary distribution to [CHECKOUT_HOME]\c\include\expat\ directory <br>
  +<p>1) Copy [EXPAT_EXTRACT]\source\lib\expat.h from expat binary distribution to [CHECKOUT_HOME]\c\include\expat\ directory <br>
   <br>
   2) Copy [EXPAT_EXTRACT]\lib\libexpat.lib to [CHECKOUT_HOME]\c\lib\expat\ directory.</p>
   
  -<p>3)Copy libexpat.dll file from [EXPAT_EXTRACT]\Libs  to %AXIS_HOME%/libs/ 
  -
  +<p>3) Copy libexpat.dll file from [EXPAT_EXTRACT]\Libs  to %AXIS_HOME%/libs/ 
  +<br>
   
   <p><b>For apache 1.3.X:</b></p>
   
   
  -<p>1)Copy the include files in "[APACHE_HOME]\include" directory to
  +<p>1) Copy the include files in "[APACHE_HOME]\include" directory to
   "[CHECKOUT_HOME] \c\include\apache1_3\"
   
   <br><br>
   2) Copy the ApacheCore.lib file from [APACHE_HOME]\libexec
   to [CHECKOUT_HOME]\c\lib\apache1_3.</p>
  -
  +<br>
   
   <p><b>For apache 2.X:</b></p>
   
   
   
  -<p>1)Copy the include files in "[APACHE_HOME]\include" directory to
  +<p>1) Copy the include files in "[APACHE_HOME]\include" directory to
   "[CHECKOUT_HOME]\c\include\apache2_0\"<br><br>
   
    2) Copy the following lib files libapr.lib, libhttpd.lib files from
   "[APACHE_HOME]\lib" to "[CHECKOUT_HOME]\c\lib\apache2_0".<br>
   </p>
  +<br>
   
   <p><b>Building the AxisServer and AxisClient dlls </b> </p>
  -
  +<br>
   <p>Build the AxisServer and AxisClient projects.(Click on file in Visual C++ ,open Visual C++ Distribution workspace (Distribution.dsw) at [CHECKOUT_HOME]\c\vc\.
  -In the workspace window, File View, right click on  the AxisServer project and AxisClient project ).Which will build the AxisServer_D.dll and AxisClient_D.dll </p>
  +In the workspace window, File View, right click on  the AxisServer project and AxisClient project ).Which will build the AxisServer.dll and AxisClient.dll </p>
   
  +<br>
   <p><b>Building Apache Modules (Apache 1.3.X and Apache 2.X) </b> </p>
   <p>
    In Visual C++ (The version used for this documentation was Visual C++ 6.0)
  @@ -200,34 +203,35 @@
   Project.<br> <br>
   
    Again in Visual C++ right click on either the project "Apache1_3Module" or
  -"Apache2_0Module" in the workspace window, File View, and then click on Settings on
  +"Apache2_0Module" in the workspace window, File View, and then click on Settings in
   the popup menu. Select the link tab. Select General from the Category drop
   down list. In the Output file name text box put the value
  -[APACHE_HOME]\modules\mod_axis.dll and click OK.(To build a Apache Module AxisServer.lib should be in the settings Link tab ) </p>
  +[APACHE_HOME]\modules\mod_axis.dll and click OK.(To build a Apache Module, AxisServer.lib should be in the settings Link tab ) </p>
   
   <p>Build either Apache1_3Module or Apache2_0Module project.
   In Visual C++ right click on either the project "Apache1_3Module" or
   "Apache2_0Module" in the workspace window, File View and click "build (selection only)"
   to build mod_axis.dll for Apache1_3Module or mod_axis2.dll for Apache2_0Module.
   <br><br>
  -(From here onwards we will refer to these modules as APACHE_MODULE. Replace it 
  +(From here onwards we refer to these modules as APACHE_MODULE. Replace it 
   with the correct module for the Apache server version that you have installed). Then build SimpleAxisServer.  
   
   &nbsp;</p>
  -
  +<br>
   <p><b>Axis Transport Library</b></p>
  -<p>In VC++ distribution workspace build AxisTransport project.Then AxisTransport.dll will be built.</p>
  +<p>In VC++ distribution workspace build AxisTransport project.Then AxisTransport.dll will be built.</p> <br>
   <p><b>Xerces Parser Library and Expat Parser Library</b></p>
   <p>In VC++ distribution workspace build either AxisXMLParserXerces project or AxisXMLParserExpat project. Then AxisXMLParser.dll will be built.</p>  
   
  -<p><b> Building AxisTransport_D.dll  and AxisXMLParser_D.dll</b>
  -<br>Build the AxisTransport and AxisXMLParser projects. Which will build the AxisTransport_D.dll and AxisXMLParser_D.dll in [CHECKOUT_HOME]\c\bin. </p>
  -
  +<br>
  +<p><b> Building AxisTransport.dll  and AxisXMLParser.dll</b>
  +<br>Build the AxisTransport and AxisXMLParser projects. Which will build the AxisTransport.dll and AxisXMLParser.dll in [CHECKOUT_HOME]\c\bin. </p>
  +<p>(When the projects are built in Debug mode then the Dlls will appear as AxisTransport_D and AxisXMLParser_D.dll)</p> 
   <p><a name="deployaxis"></a></p>
   
   
   <h2>Deploying Axis in Apache</h2>
  -
  +<br>
   <p>1) Create a directory structure called "Axis" inside [APACHE_HOME] as
   follows.
   <br>
  @@ -244,7 +248,7 @@
   |__ wsdls (The directory for the wsdl files of the deployed web services)<br>
   
   <br>
  -2)Set an environment variable named AXIS_HOME and give [APACHE_HOME]\Axis as
  +2) Set an environment variable named AXIS_HOME and give [APACHE_HOME]\Axis as
   the value.
   <br>
   
  @@ -253,25 +257,18 @@
   <br>
   ii)Copy APACHE_MODULE to [APACHE_HOME]\modules directory of your apache installation.
   <br>
  -iii)Copy AxisServer_D.dll  to any location specified by your PATH environment variable 
  -<br>
  -iv)Copy AxisTransport_D.dll to any location specified by your PATH environment variable 
  -<br>
  -v)Copy AxisXMLParser_D.dll to any location specified by your PATH environment variable 
  -<p>
  -<b>NOTE:</b>Usually it is a best practice to copy AxisServer_D.dll ,AxisTransport_D.dll and AxisXMLParser_D.dll  to [AXIS_HOME]\libs\ directory and add that directory to your PATH environment variable.
  -
  +<p>Copy AxisServer.dll ,AxisTransport.dll and AxisXMLParser.dll to [AXIS_HOME]\libs\ directory and add that directory to your PATH environment variable.Or to any location specified by your PATH environment variable.</p>    
   
   <br> <br>
  -2) Set the "PATH" environment variable to the following directories.
  +<p>3) Set the "PATH" environment variable to the following directories.
   
   <br>
   [APACHE_HOME]<br>
   [APACHE_HOME]\Axis\libs<br>
   <br> 
   
  -3) Change the apache configuration file [APACHE_HOME]\conf\httpd.conf to
  -include the following lines at the bottom.<br>
  +4) Include the following lines at the bottom of the apache configuration file [APACHE_HOME]\conf\httpd.conf 
  +<br>
   
   
   <br>
  @@ -287,7 +284,7 @@
   &lt;/Location&gt;
   <br>
   <br>
  -4)create a file in [APACHE_HOME]\Axis named "axiscpp.conf" which should
  +5) Create a file in [APACHE_HOME]\Axis named "axiscpp.conf" which should
   contain the following lines.
   
   <br>
  @@ -301,19 +298,19 @@
   
   <br>
   Where XXXX will be the path to a file named AxisLog (The log file)and YYYY
  -will be the path to the server.wsdd file.ZZZZ will be the path to AxisTransport_D.dll if it's a HTTP(if the selected transport is SMTP then should give that path.WWWW will be the path to AxisXMLParser_D.dll<br>
  +will be the path to the server.wsdd file.ZZZZ will be the path to AxisTransport.dll if it's a HTTP(if the selected transport is SMTP then should give that path.WWWW will be the path to AxisXMLParser.dll<br>
   <br>
   i.e.<br>
   LogPath:[APACHE_HOME]\Axis\logs\AxisLog.log  
   
   <br>
   WSDDFilePath:[APACHE_HOME]\Axis\conf\server.wsdd <br>
  -Transport_http:[APACHE_HOME]\Axis\libs\AxisTransport_D.dll <br>
  -XMLParser:[APACHE_HOME]\Axis\libs\AxisXMLParser_D.dll <br>
  +Transport_http:[APACHE_HOME]\Axis\libs\AxisTransport.dll <br>
  +XMLParser:[APACHE_HOME]\Axis\libs\AxisXMLParser.dll</p>  
   
  -<p><b>Note:If the AxisTransport_D.dll and AxisXMLParser_D.dll paths are not given in axiscpp.conf then the hardcoded values will be used.For that set the path of these two in the PATH environment variable or copy them to the same location as the Client.exe.</b></p>
  +<p><b>Note:If the AxisTransport.dll and AxisXMLParser.dll paths are not given in axiscpp.conf then the hardcoded values will be used.For that set the path of these two in the PATH environment variable or copy them to the same location as the Client.exe.</b></p>
   <br>
  -<p>6)Select start-&gt;programs-&gt;Apache HTTP server-&gt;Control Apache
  +<p>6) Select start-&gt;programs-&gt;Apache HTTP server-&gt;Control Apache
   Server-&gt;stop to stop the apache server
   
   <br>
  @@ -322,7 +319,7 @@
   <br>
   <br>
   Open up a DOS terminal and give the command "apache -k start" to start
  -apache (If Apache 2.0 server does not seem to respond when started this way, try "apache -X").
  +apache (If Apache 2.0 server does not respond when started this way, try "apache -X").
   
   
   <br>
  @@ -363,7 +360,7 @@
   
   
   <br>
  -1)Start the eclipse platform IDE.<br>
  +1) Start the eclipse platform IDE.<br>
   Go to File-&gt;New-&gt;Project.<br>
   
   <br>
  @@ -374,7 +371,7 @@
   dialog" keep the "use default" Tick Box checked.
   <br>
   Note down the path in the "Directory" Text Box. This location will be
  -referred to as [SKELSTUB_HOME] from this point onwards. Click "Next".<br>
  +referred as [SKELSTUB_HOME] from this point onwards. Click "Next".<br>
   
   
   <br>
  @@ -390,7 +387,7 @@
   <br>
   Click �Libraries� in the �New� dialog. Click �Add External JARs��. In the
   �JAR Selection� dialog that appears browse to [CHECKOUT_HOME]\
  -\lib\axisjava and select the following JARs.<br>
  +lib\axisjava and select the following JARs.<br>
   
   
   <br>
  @@ -422,7 +419,7 @@
   
   <br>
   For this demonstration we will use a Calculator web service and the WSDL file
  -for that web service is located at [CHECKOUT_HOME]\c\samples\server\simple.<br>
  +the web service is located at [CHECKOUT_HOME]\c\samples\server\simple.<br>
   
   <br>
   Copy the Calculator.wsdl to [SKELSTUB_HOME]<br>
  @@ -453,8 +450,8 @@
   
   <p><img border="0" src="images/c/argument.jpg" width="626" height="272"></p>
   
  -<p>NOTE: These are the arguments for the java tool WSDL2Ws. The usage of the
  -WSDL2Ws is as follows.<br>
  +<p><b>NOTE: These are the arguments for the java tool WSDL2Ws. The usage of the
  +WSDL2Ws is as follows.</b><br>
   Java org.apache.axis.wsdl.wsdl2ws.WSDL2Ws &lt;wsdl file&gt; -o&lt;output
   directory&gt; <br>
   -l&lt;c|c++&gt; -s&lt;(server|client)&gt;.<br>
  @@ -482,8 +479,8 @@
   <p>For building WSDL2Ws java tool on the command line you require jdk1.4 or
   above.<br>
   <br>
  -To build WSDL2Ws java tool you should set the CLASSPATH Environment Variable
  -to point to the following jar files.Create a New Folder called wsdl2wsTool\lib and put those jars in it. You can find 
  +To build WSDL2Ws java tool set the CLASSPATH Environment Variable
  +to point to the following jar files.Create a New Folder called wsdl2wsTool\lib and put the above mentioned jars in it. You can find 
   these jars in [CHECKOUT_HOME]\lib\axisjava.
   
   <br>
  @@ -501,15 +498,15 @@
   wsdl4j.jar<br>
   xml-apis.jar
   <br><br>
  -Open a command window.<br>
  +Open a command window.<br> <br>
   Change directory to [CHECKOUT_HOME]\c\src\wsdl.<br>
   We will refer to this directory as [SKELSTUB_HOME] as we did during generating Skeletons/Wrappers and Stubs with eclipse.
  -<br>
  +<br> <br>
   Run the following command to build the java tool.
   <br><b>
   javac -sourcepath . org\apache\axis\wsdl\wsdl2ws\WSDL2Ws*.java</b>
  -<br>
  -NOTE: Notice the spaces between the "dot" after the -sourcepath switch
  +<br> <br>
  +<b>NOTE: Notice the spaces between the "dot" after the -sourcepath switch</b>
   
   <br>
   If the command finishes without any output then the java tool has been
  @@ -523,7 +520,7 @@
   <br>
   Java -classpath .;%classpath% org.apache.axis.wsdl.wsdl2ws.WSDL2Ws Calculator.wsdl -o./ServerOut -lc++ -sserver<br>
   <br>
  -You must give the class path exactly as above in that order.
  +Give the class path exactly the same order as given above. 
   <br><br>
   If the tool is successful the tool will display the files it has
   generated. The skeletons and stubs will be generated in
  @@ -542,7 +539,7 @@
   
   <h2>Building and Deploying the web service</h2>
   
  - <p>1) If you have followed the above instructions you should have been able to generate the Server 
  + <p>1) If you have followed the above instructions correctly you would have been able to generate the Server 
   side Skeletons and Wrappers for the Calculator.wsdl
   <br><br> 2) Start Visual C++.<br>
   
  @@ -554,7 +551,7 @@
   <br>
   5) Select �Win 32 Dynamic-Link Library�.<br>
   <br>
  -6) Give a project name (e.g. ws1), give some folder (say "deployws") as the "location" for the project, select the "create new workspace" radio button, and click �OK�.When this procedure is followed the "ws1" project files are created in a folder named "ws1" inside the "deployws" folder. <br>
  +6) Give a project name (e.g. ws1), give a folder (say "deployws") as the "location" of the project, select the "create new workspace" radio button, and click �OK�.When this procedure is followed the "ws1" project files are created in a folder named "ws1" inside the "deployws" folder. <br>
   
   <br>
   7) In the dialog that appears select �An empty DLL project� click �Finish� and then �OK�.<br>
  @@ -569,11 +566,10 @@
   Add Axis include directory [CHECKOUT_HOME]c\include\ to the project In the 
   �Additional include directories�<br>
   
  -<br>10)Now business logic should be
  -added to the generated Skeletons. The Skeletons in this case are Calculator.h
  +<br>10) Now add the business logic to the generated Skeletons. The Skeletons in this case are Calculator.h
   and Calculator.cpp
   <br><br>
  -11) We shall implement two methods available in Calculator.cpp as follows.
  +11) We will implement two methods that are in Calculator.cpp as follows.
   <br>
   int Calculator::add(int Value0, int Value1)<br>
   {<br>
  @@ -590,7 +586,7 @@
   13) The ws1.dll will be built in "ws1\Debug" by Visual
   C++<br><br>
   14) Place the built ws1.dll file in [APACHE_HOME]\Axis\webservices<br><br>
  -15) In addition to this you have to create sever.wsdd file in
  +15) In addition to this create sever.wsdd file in
   [APACHE_HOME]\Axis\conf<br>
   <br>
   The server.wsdd file for this example is
  @@ -605,11 +601,11 @@
   &lt;/service&gt;
   &lt;/deployment&gt;</pre>
   
  -<p>In this file [APACHE_HOME] should be replaced with the actual value of
  -[APACHE_HOME] (i.e. For this case "C:\Program Files\Apache Group\Apache" for
  +<p>In this file [APACHE_HOME] has to be replaced with the actual value of
  +[APACHE_HOME] (i.e. In this case "C:\Program Files\Apache Group\Apache" for
   apache 1.3.x and "C:\Program Files\Apache Group\Apache2" for apache 2.x)<br>
   <br>
  -Description of the server.wsdd file<br>
  +<b>Description of the server.wsdd file</b><br>
   <br>
   The service element specifies the service name.<br>
   &lt;service name="Calculator"&gt;<br>
  @@ -620,7 +616,7 @@
   Group\Apache\Axis\webservices\ws1.dll"/&gt;<br>
   <br>
   In this parameter element we specify the parameter allowedMethods and its
  -value, the methods exposed by the web service (i.e. subtract and add).<br>
  +value, the methods exposed by the web service (i.e. subtract and add).<br> <br>
   <b>Note: A trailing space should be put after every allowed method.</b><br>
   &lt;parameter name="allowedMethods" value="subtract add "/&gt;<br>
   <br>
  @@ -642,18 +638,18 @@
   
   
   
  -<p>1) If you have followed the above instructions you should have been able to generate the Server 
  -side Skeletons and Wrappers for the Calculator.wsdl.
  +<p>1) If you have followed the above instructions you would have been able to generate the Server 
  +side Skeletons and Wrappers for the Calculator.wsdl.<br>
   
  -<br> 2) Start Visual C++.<br>
  +<br> 2) Start Visual C++.<br> <br>
   3) Go to File->New�
  -<br>
  -4) Select the �Projects� tab<br>
  +<br> <br>
  +4) Select the �Projects� tab<br> <br>
   5) Select �Win 32 Console Application�
  -<br>
  +<br> <br>
   6) Give a project name (e.g. calclient) and click �OK�. 
   
  -Give a project name (e.g. calclient), give some folder (say "wsclient") as the "location" for the project, select the "create new workspace" radio button, and click �OK�.When this procedure is followed the "calclient" project files are created in a folder named "calclient" inside the "wsclient" folder. <br>
  +Give a project name (e.g. calclient), give a folder ( For e.g: "wsclient") as the "location" of the project, select the "create new workspace" radio button, and click �OK�.When this procedure is followed the "calclient" project files are created in a folder named "calclient" inside the "wsclient" folder. <br>
   
   
   </p>
  @@ -661,11 +657,11 @@
   
   <p>7) In the dialog that appears select �An empty project� click �Finish� and
   then �OK�.
  -<br>
  +<br> <br>
   8) Right click on the project that you created (i.e. ws1) and click �Add
   Files to Project�� on the menu that appears.Then Add the generated .cpp and .h files from the [SKELSTUB_HOME]\ClientOut to the project and click �OK�.
   
  -<br>
  +<br> <br>
   9) Right click on the project (i.e. calclient) again and click on
   �Settings�� on the menu that appears. Click the �C/C++� tab and select
   �Preprocessor� from the �Category� Drop down list.<br>
  @@ -703,7 +699,7 @@
   <p>It is better to have the path to your AxisXMLParser.dll and AxisTransport.dll in axiscpp.conf or have the dlls where the client exe is.</p>
   <p>Right click on the project and click �Build� on the menu that appears.
   
  -<p>When the XMLParser is running these steps occur.<br>
  +<p>When the XMLParser is running these steps would occur.<br>
   1. Locate Parser dll.<br>
   2. Create Parser instance by CreateInstance() method.<br>
   3. Give the stream to parser by setInputStream() method.<br>
  @@ -711,45 +707,45 @@
   5. getStatus() to see if the streams are properly passed.<br>
   6. Destroy parser object by DestroyInstance().<br>
   </p>
  -<p>If Visual C++ complains about missing libs go to Build-&gt;Rebuild All (Do
  -make sure that the apache server is stopped). Now the client exe is built.<br>
  +<p>If Visual C++ complains about missing libs go to Build-&gt;Rebuild All (Please
  +make sure that the apache server is stopped). Now the client exe is built.<br> <br>
   
   Start the Apache server by typing apache -k start and run the exe from Visual C++ by
  -going to Build-&gt;Execute calclient.exe. If all went well now you should see the SOAP Request,
  +going to Build-&gt;Execute calclient.exe. If all goes well, now you would see the SOAP Request,
   SOAP Response and the result printed by calclient.exe.</p>
   
   
   <P><a name="providedservices"></a></p>
  -<h2>Building and deploying the provided interop web services samples</h2>
  +<h2>Building and deploying the provided samples of interop web services</h2>
   <p>
  -<br>1) Open the Visual C++ workspace (interoptests.dsw) at [CHECKOUT_HOME]\c\vc\samples\server\interoptests\  and do a batch build of all projects.
  -<br>2) You will find the built dynamic libraries at [CHECKOUT_HOME]\c\bin directory. Following are the built DLLs.
  +<br>1) Open the Visual C++ workspace (interoptests.dsw) at [CHECKOUT_HOME]\c\vc\samples\server\interoptests\  and do a batch build of all projects.<br>
  +<br>2) You will find the built dynamic libraries at [CHECKOUT_HOME]\c\bin directory. Following are the built DLLs.<br>
   <br>base.dll
   <br>cbase.dll
   <br>cGroupB.dll
   <br>doclitbase.dll
   <br>doclitgroupB.dll
  -<br>groupB.dll
  -<br>3)copy these dlls to [APACHE_HOME]\Axis\webservices
  -<br>4)Add the required entries to the server.wsdd file in [APACHE_HOME]\Axis\conf to deploy these
  +<br>groupB.dll <br>
  +<br>3) Copy these dlls to [APACHE_HOME]\Axis\webservices <br>
  +<br>4) Add the required entries to the server.wsdd file in [APACHE_HOME]\Axis\conf to deploy these
   interop services.
   You can find the required entries in the [CHECKOUT_HOME]\c\deploy\conf\server.wsdd_win file.
  -You will need to modify the "value" of the "classname" parameter of each service to to point to
  +You will need to modify the "value" of the "classname" parameter of each service to point to
   the relevant web service dll given above in [APACHE_HOME]\Axis\webservices.
   </p>
   
   <p><a name="providedclients"></a></p>
   <h2>Building and running the provided interop client applications</h2>
   <p>
  -<br>1) Open the Visual C++ workspace (interoptests.dsw) at [CHECKOUT_HOME]\c\vc\samples\client\interoptests\ and do a batch build of all projects.
  -<br>2) You need to build the AxisClient project in the "Distribution" workspace at [CHECKOUT_HOME]\c\vc\, because you need the AxisClient.lib to complile client applications and AxisClient.dll to run them.
  +<br>1) Open the Visual C++ workspace (interoptests.dsw) at [CHECKOUT_HOME]\c\vc\samples\client\interoptests\ and do a batch build of all projects.<br>
  +<br>2) You need to build the AxisClient project in the "Distribution" workspace at [CHECKOUT_HOME]\c\vc\, because you need the AxisClient.lib to compile client applications and AxisClient.dll to run them.<br>
   <br>3) You will find the built console applications and AxisClient.dll at [CHECKOUT_HOME]\c\bin directory. Following are the built .exe files.
  -	base.exe
  -	cbase.exe
  -	cgroupB.exe
  -	doclitbase.exe
  -	doclitgroupB.exe
  -	groupB.exe
  +	base.exe <br>
  +	cbase.exe<br>
  +	cgroupB.exe<br>
  +	doclitbase.exe<br>
  +	doclitgroupB.exe<br>
  +	groupB.exe<br>
   <br>4) In order to run these samples you should have AxisClient.dll in the PATH environment variable or in the same directory where the .exe is.
   </p>
   
  @@ -768,7 +764,7 @@
   <h2>Creating and Building your own parser</h2>
   <img border="0" src="images/c/parserd/parser.jpg">
    
  -<p><b>Note:Implement XMLParser.h interface according to rules described there.</b><br>
  +<p><b>Note:Implement XMLParser.h interface according to the rules described in the header file.</b><br>
   <p>When creating your own parser refer  XMLParser.h header file for API. To see an example implementation refer SoapParserExpat.h,SoapParserExpat.cpp, SoapParserXerces.h and SoapParserXerces.cpp.
   <p>Axis loads the parser dynamic library through following export functions which you also have to implement.</p>
   <p>CreateInstance() - Used by Axis to create an instance of your parser class<br>