roshan      2004/10/11 22:08:47

  Modified:    targets/axis/cpp lininstall-guide.pdf lininstall-guide.html
  Log:
  Edited lininstall Guide. Edited by Rangika
  
  Revision  Changes    Path
  1.21      +107 -148  ws-site/targets/axis/cpp/lininstall-guide.pdf
  
        <<Binary file>>
  
  
  1.22      +97 -212   ws-site/targets/axis/cpp/lininstall-guide.html
  
  Index: lininstall-guide.html
  ===================================================================
  RCS file: /home/cvs/ws-site/targets/axis/cpp/lininstall-guide.html,v
  retrieving revision 1.21
  retrieving revision 1.22
  diff -u -r1.21 -r1.22
  --- lininstall-guide.html     6 Oct 2004 08:53:37 -0000       1.21
  +++ lininstall-guide.html     12 Oct 2004 05:08:47 -0000      1.22
  @@ -278,7 +278,6 @@
   <div class="h3">
   <h3>Axis C++ Linux Installation Guide</h3>
   </div>
  -<h3>Installing and deploying web applications using xml-Axis C++</h3>
   <h3>Contents</h3>
   <ul>
   <li>
  @@ -287,10 +286,15 @@
   <li>
   <a href="#What">What You Need</a>
   </li>
  +<li>
  +<a href="#Install">Installing Axis C++</a>
  +</li>
   <li style="list-style: none">
  -<br> 
  +<br>
  +</li>
  +</ul>
   <p>
  -<a name="Introducti"></a>
  +<a name="Introduction"></a>
   </p>
   <h3>Introduction</h3>
   <p>This guide will help you to start with Axis C++. I'll explain the minimum steps 
needed to build and run Axis C++, and warn you about the common pitfalls.</p>
  @@ -298,281 +302,162 @@
   <a name="What"></a>
   </p>
   <h3>What You Need</h3>
  -<p>&nbsp; &nbsp; &nbsp; Expat or Xercesc<br>&nbsp; &nbsp; &nbsp; Apache2 or 
Apache1<br>
  +<p>You need a few helper libraries for parsing XML, WSDL processing and 
introspection. You need to have the following in order to run Axis C++ engine.</p>
  +<p>&nbsp; &nbsp; &nbsp; <a href="http://httpd.apache.org/download.cgi";>Apache web 
server</a> (2.0.x or 1.3.x)&nbsp; - You need to have Apache built with module so 
support, hence you need to have the source of Apache web server.<br> Axis C++ uses 
Apache web server to host services.<br>
   </p>
  -<p>
  -<strong>Note:</strong> If you are using provided configure and Makefile.in's you 
don't need to run autogen.sh script to generate them for your platform. In any case if 
you need to run it then following versions are recommended to be installed in your 
environment.</p>
  -<p>autoconf<br> automake<br>libtool<br> gcc</p>
  -<p>You can download the Axis C++ source or binary from one of the apache mirror 
sites<br> 
  -<a 
href="http://ws.apache.org/axis/cpp/download.html";>http://ws.apache.org/axis/cpp/download.html</a>
  -<br>
  -<br>You can get expat from the uri <a 
href="http://sourceforge.net/projects/expat/";>http://sourceforge.net/projects/expat/</a>
  -<br>
  -<br> You can get xercesc from the uri <a 
href="http://xml.apache.org/xerces-c/download.cgi";>http://xml.apache.org/xerces-c/download.cgi</a>
   <br>
  +<p>&nbsp; &nbsp; &nbsp; <a href="http://sourceforge.net/projects/expat/";>Expat 
(1.95.7)</a> and/or <a 
href="http://archive.apache.org/dist/xml/xerces-c/Xerces-C_2_2_0/";>Xerces C++ 
(2.2.0)</a> XML parser(s)<br>
  +<br> Axis C++ needs an XML parser to parse SOAP messages and WSDD files. It has a 
parser abstraction layer that helps users to select/switch between parsers. However 
only one parser library could be used at a time. Currently Expat and Xerces parsers 
are supported by Axis C++.<br>
  +</p>
   <br>
  +<p>
  +<a name="Install"></a>
   </p>
  -<h3>Source distribution installation</h3>
  -<p>Unzip and untar the tgz ball.<br>You must define some environment variables in 
order to build.<br>
  +<h3>Installing Axis C++</h3>
  +<p>1. Install Apache web server. In case you have already installed Apache , make 
sure that 'so modules' are enabled.<br> This is because Axis C++ server engine is 
implemented as a 'so module'. (For Apache 1.3.x use --enable-module=so; for Apache 
2.0.x use --enable-so when configuring. See Apache web server documentation for more 
details)</p>
   <br>
  -<strong>AXISCPP_HOME</strong> is where you checkout Axis C++</p>
   <br>
  -<p>
  -<strong>AXISCPP_HOME="/usr/local/axiscpp"</strong>
  +<p>2. Install Expat (1.95.7) and/or Xerces C++ (2.2.0) depending on your parser 
preferences. See the respective parser's documentation for installation 
instructions.</p>
   <br>
  -<strong>AXISCPP_DEPLOY="/usr/local/axiscpp_deploy"</strong>
   <br>
  -<strong>LD_LIBRARY_PATH="$AXISCPP_DEPLOY/lib:&lt;path to parser library you 
use&gt;"</strong>
  +<p>3. <a href="http://ws.apache.org/axis/cpp/download.html";>Download Axis C++</a> 
source or binary distribution and extract the package.</p>
   <br>
  -<strong>export AXISCPP_HOME AXISCPP_DEPLOY LD_LIBRARY_PATH</strong>
   <br>
  -</p>
  +<p>4. Define the following environment variables.<br>
  +<br> 
  +<strong>AXISCPP_HOME="Path to Axis C++ source or binary extracted folder"</strong>
  +<br> e.g. <em>AXISCPP_HOME="/my/home/axiscpp"</em>
   <br>
  -<p>
  -<strong>AXISCPP_HOME</strong> is where you extracted the source distribution.<br>
  -<strong>AXISCPP_DEPLOY</strong> is where Axis C++ will be deployed</p>
  -<p>Axis C++ core is independant of the parser layer and transport layer.</p>
  -<p>You can write your own transport or parser library according to the APIs 
provided. Currently Axis C++ provides API implementations for Xerces-c and Expat. It 
also provides it's own client side transport library implementation. In the server 
side deployment, Axis C++ provides two modules that can be loaded into apache1.3 and 
apache 2 as shared libraries.</p>
  -<p>So this sums upto two possibilities.<br>You can deploy Axis C++ server<br>&nbsp; 
&nbsp; On Apache2 with xercesc parser or expat parser(Only one parser at a 
time)<br>&nbsp; &nbsp; On Apache1.3 with xercesc parser or expat parser<br>
  -</p>
  -<p>
  -<strong>When you build Axis C++ you can give options</strong>
  -</p>
  -<p>
  -<strong>1) Build for Apache2</strong>
  -<br> With Expat parser support only<br> With Xerces parser support only<br> With 
both parser support</p>
  -<p>
  -<strong>2) Build for Apache1.3</strong>
  -<br> With Expat parser support only<br> With Xerces parser support only<br> With 
both parser support</p>
  -<p>You can choose these selections when you configure</p>
   <br> 
  -<p>
  -<strong>The build process</strong>
  -</p>
  -<p>
  -<strong>cd $AXISCPP_HOME</strong>
  +<strong>AXISCPP_DEPLOY="Path to the folder where you want to install Axis 
C++"</strong>
  +<br> e.g. <em>AXISCPP_DEPLOY="/usr/local/axiscpp_deploy"</em>
  +<br> 
  +<strong>LD_LIBRARY_PATH="&lt;path to parser library you 
use&gt;/lib:$AXISCPP_DEPLOY/lib:$LD_LIBRARY_PATH"</strong>
  +<br> 
  +<strong>export AXISCPP_HOME AXISCPP_DEPLOY LD_LIBRARY_PATH</strong>
   </p>
   <br>
  -<p>Following step is optional. If you need to generate configure and Makefile.in's 
instead of the provided one's you need to run autogen.sh<br>
  -<br>
  -<strong>sh autogen.sh</strong>
   <br>
  -<br>
  -<strong>./configure --prefix=&lt;Where you need to deploy axis c++&gt; \</strong>
  -<br>
  -<strong>--with-apache2=&lt;path to apache2&gt; \</strong>
  +<p>5. Build Axis C++ (If you have downloaded Axis C++ binaries, you can skip this 
step)<br>
   <br> 
  -<strong>--with-expat=/usr/local/expat1957</strong>
  +<strong>cd $AXISCPP_HOME</strong>
   <br>
  +<br> 
  +<strong>./configure --prefix=$AXISCPP_DEPLOY --with-apache2=/path/to/Apache2 
--with-xercesc=/path/to/xerces-c</strong>
   <br>
  +<br> 
   <strong>make</strong>
   <br>
  -<br>
  +<br> 
   <strong>make install</strong>
  -</p>
  -<p>This will deploy Axis C++ into your folder of choice.<br>
  -<br>Following are some of the options available with configure<br>
  -<br>
  -<strong>--with-apache2 :</strong> To use apache2 as server transport library<br>
  -<br>
  -<strong>--with-apache :</strong> To use apache as server transport library<br>
  -<br>
  -<strong>--with-expat :</strong> To build expat parser library<br>
   <br>
  -<strong>--with-xercesc :</strong>To build xercesc parser library<br>
   <br>
  -<strong>--enable-samples :</strong> Whether you need to build samples(server and 
client)<br>&nbsp; &nbsp; &nbsp; &nbsp; By default samples are built. If you don't want 
to build the samples then you need to specifically say no<br>
  +<br> The above set of instructions assume you have Apache 2.0.x web server and 
Xerces C++ parser.<br> For more information on build options run <em>./configure 
--help</em>.<br>
  +<br>The libs created in build process are placed in $AXISCPP_DEPLOY/lib. (Provided 
that you used $AXISCPP_DEPLOY as --prefix option for configuring). Note that you need 
permission to install to the specified directory given in prefix option<br> 
&nbsp;<br>You need global access rights to the Axis C++ deploy folder to make sure 
that Axis C++ works properly.<br>
  +<br> 
  +<em>chmod -R 777 $AXISCPP_DEPLOY</em>
  +</p>
   <br>
  -<strong>--enable-testcases :</strong> Whether you need to build testcases<br>&nbsp; 
&nbsp; &nbsp; &nbsp; By default test cases are built. If you don't want to build the 
test cases then you need to specifically say no<br>
   <br>
  -<strong>--enable-log :</strong> Whether to enable log facility. By default this is 
enabled. If you don't need it say no to this<br>
  +<p>6. Configure Apache module<br>
   <br>
  -<strong>--enable-libwww :</strong> By default libwww client transport library is 
built. If you don't need it say no to this.<br>
  -</p>
  -<p>You may rename and edit <strong>build.sh_sample</strong> for one step 
configuring and building.</p>
  -<p>Once you have finished , have a look at 
<strong>$AXISCPP_HOME/build_errors.</strong> Most probably you will see many warnings. 
Just ignore them. But if you see any errors it means that build was not successful and 
check whether you have followed the instructions carefully.</p>
  -<p>You can see the folder <strong>$AXISCPP_DEPLOY/lib</strong> to see what are 
created</p>
  -<p></p>
  -<p>
  -<strong>libaxiscpp_mod.so is apache module which is loaded when apache 
loads</strong>
  -<br> 
  -<strong>libaxiscpp_mod2.so is apache2 module which is loaded when apache2 
loads</strong>
  -<br> 
  -<strong>libserver_engine.so is the Axis C++ server engine which is loaded by 
libaxis_mod(2).so module</strong>
  -<br> 
  -<strong>libaxiscpp_client.so is Axis C++ client library</strong>
  +<strong>Note:</strong> to execute the following steps, you may need to have super 
user rights on your machine.<br> Now you need to edit <strong>httpd.conf</strong> file 
in &lt;path to Apache web server installation&gt;/conf by adding the following lines 
at the bottom of that file (assuming you are using Apache 2.0.x):<br>
   <br> 
  -<strong>libaxis_transport.so is the Axis C++ client transport library</strong>
  +<strong>LoadModule axis_module modules/libaxiscpp_mod2.so</strong>
   <br> 
  -<strong>libaxis_expat.so is the expat parser library implementation for Axis 
C++</strong>
  -<br> 
  -<strong>libaxis_xercesc.so is the xercesc parser library implmentation for Axis 
C++</strong>
  -</p>
  -<p>Also <strong>$AXISCPP_HOME/samples/server</strong> samples are built and 
installed in <strong>$AXISCPP_DEPLOY/lib</strong>
  -</p>
  -<p>
  -<strong>$AXISCPP_HOME/samples/client</strong> samples are built and executables are 
in <strong>$AXISCPP_DEPLOY/bin</strong>
  -</p>
  -<p>Add the following into <strong>$&lt;apache install 
directory&gt;/conf/httpd.conf</strong>
  -<br>
  -<br>
  -</p>
  -<p>
  -<strong>LoadModule axis_module modules/libaxiscpp_mod2.so</strong> (in apache1.3 
replace modules with libexec and libaxiscpp_mod2.so with libaxiscpp_mod.so)<br>
   <strong>&lt;Location /axis&gt;</strong>
  -<br> 
  +<br>
   <strong>SetHandler axis</strong>
  -<br> 
  +<br>
   <strong>&lt;/Location&gt;</strong>
  -</p>
  -<p>Now you need the deployment descripter (server.wsdd) to deploy server samples 
you built.</p>
  -<p>By default there is a deployment descripter in 
<strong>$AXISCPP_DEPLOY/conf</strong> to deploy samples</p>
  -<p>In <strong>$AXISCPP_DEPLOY/etc/axiscpp.conf</strong> file you can give paths to 
your log files, configuration files, libraries etc.</p>
  -<br> 
  -<p>Now we need to copy apache module(libaxiscpp_mod2.so for apache2 and 
libaxiscpp_mod.so for apache) to the correct places and start apache.<br>To do that 
you can find scripts written in <strong>$AXISCPP_DEPLOY/bin.</strong>
   <br>
  -<strong>cd $AXISCPP_DEPLOY/bin</strong>
  -</p>
  -<p>To deploy on apache2<br>
  -<strong>sh deploy_apache2.sh</strong>
  +<br>For Apache1.3.x LoadModule line should read as:<br> 
  +<strong>LoadModule axis_module libexec/libaxiscpp_mod.so</strong>
   </p>
  -<p>To deploy on apache<br>
  -<strong>sh deploy_apache.sh</strong>
  -</p>
  -<p>When you run the above script,<br>libaxiscpp_mod2.so is copied to &lt;your 
apache home&gt;/modules folder.<br>libaxis_expat.so is renamed to 
libaxis_xmlparser.so. Also apache is started and libaxiscpp_mod2.so is loaded into 
apache.<br>libaxiscpp_mod2.so is the apache module for Axis C++. This will in term 
load Axis C++ server engine (libserver_engine.so).<br>Note that 
<strong>libaxis_xmlparser.so</strong> is loaded by the engine dynamically as parsing 
is required from the engine.</p>
  -<p>Note that somewhere in the script above, it changes the name 
<strong>libaxis_expat.so</strong> to <strong>libaxis_xmlparser.so.</strong>
  -<br>If we use xerces we need to change <strong>libaxis_xercesc.so</strong> to 
<strong>libaxis_xmlparser.so.</strong>
  -</p>
  -<p>If you have done installation successfully it will display the Axis C++ welcome 
page when you point to URI <a href="http://localhost/axis";>http://localhost/axis</a>
   <br>
   <br>
  -<strong>Note:</strong> In the axis welcome page all the services in 
<strong>$AXISCPP_DEPLOY/conf/server.wsdd</strong> are listed. This does not mean that 
the libraries corresponding to these services are deployed yet. It merely list 
whatever in the server.wsdd.</p>
  +<p>7. Configure server deployment descriptor file<br>
  +<br> Now you need the server deployment descriptor (server.wsdd) to deploy server 
samples you built.<br> There is a sample deployment descriptor called 
server.wsdd_linux in $AXISCPP_DEPLOY/etc to help to deploy samples.<br> If you edit 
this file to your requirements then when you run step 9 it will be turned into 
server.wsdd. If you don't use scripts as described in step 9 then just rename 
server.wsdd_linux to server.wsdd after doing your changes. server.wsdd file is an XML 
file, and the contents are self descriptive.</p>
   <br>
  -<p>To run interop samples<br>
  -<strong>cd $AXISCPP_DEPLOY/bin</strong>
   <br>
  -<strong>./base localhost 80 etc.</strong>
  +<p>8. Set engine wide settings in configuration file<br>
  +<br> Axis C++ uses a configuration file to let the user specify preferences such as 
log file locations, transport and parser libs to be used and location of deployment 
descriptor files.<br> A sample configuration file named axiscpp.conf_linux is 
installed in $AXISCPP_DEPLOY/etc folder. Edit this file to your requirements.<br> When 
you execute step 9 this file will be turned into axiscpp.conf. If you don't use 
scripts as described in step 9 then just rename axiscpp.conf_linux to axiscpp.conf 
after your changes<br>
  +<br> Configuration file has the following <strong>Syntax:</strong>
   </p>
  -<p>(Check whether there is a script <strong>run_interoptests.sh</strong> in that 
folder which can be used to run all the interop tests)</p>
  -<p>If you don't get it right check with the following list<br>
  -<br>Check whether <strong>AXISCPP_HOME</strong> is set where you build axis c++ 
by<br> 
  -<strong>echo $AXISCPP_HOME</strong>
   <br>
  -<br>Check whether <strong>AXISCPP_DEPLOY</strong> and 
<strong>LD_LIBRARY_PATH</strong> is set where you start apache<br> Build axis c++ and 
run clients by<br>
  -<strong>echo $AXISCPP_DEPLOY echo $LD_LIBRARY_PATH</strong>
  -<br>
  -<br>
  -</p>
  -<p>Check whether you have necessary permissions to create the deploy folder which 
you give in configure option prefix.<br>eg: configure 
--prefix=/usr/local/axiscpp_deploy you need permission to write in /usr/local/ . 
Otherwise if you type make install you will get permission problems</p>
  -<p>Check whether paths in server.wsdd are pointing correctly to service or handler 
libraries<br>
  -<br> Check whether <strong>axiscpp.conf</strong> is containing correct entries<br>
  -<br> Check whether Axis C++ can write to log 
folder<strong>($AXISCPP_DEPLOY/log)</strong>
  -</p>
  -<br> 
  -<h3>Binary distribution installation</h3>
  -<p>Unzip and untar the tgz ball.<br>You must define some environment variables 
first.</p>
   <p>
  -<strong>AXISCPP_DEPLOY="/usr/local/axiscpp_deploy"</strong>
  +<strong>The comment character is '#'</strong>
   <br>
  -<strong>LD_LIBRARY_PATH="$AXISCPP_DEPLOY/lib:&lt;path to parser library you 
use&gt;"</strong>
  -<br>
  -<strong>export AXISCPP_DEPLOY LD_LIBRARY_PATH</strong>
  -</p>
  -<p>
  -<strong>AXISCPP_DEPLOY</strong> is where you extracted the binary distribution</p>
  -<p>Have a look at the folder <strong>$AXISCPP_DEPLOY/lib</strong> to see what is 
there</p>
  -<p>
  -<strong>libaxiscpp_mod.so is apache module which is loaded when apache 
loads</strong>
  +<br> 
  +<strong>WSDDFilePath: The path to the server wsdd file</strong>
   <br>
  -<strong>libaxiscpp_mod2.so is apache2 module which is loaded when apache2 
loads</strong>
   <br>
  -<strong>libserver_engine.so is the Axis C++ server engine which is loaded by 
libaxis_mod(2).so module</strong>
  +<strong>ClientWSDDFilePath:The path to the client wsdd</strong>
   <br>
  -<strong>libaxiscpp_client.so is Axis C++ client library</strong>
   <br>
  -<strong>libaxis_transport.so is the Axis C++ client transport library</strong>
  +<strong>LogPath: The path to the Axis C++ server log</strong>
   <br>
  -<strong>libaxis_expat.so is the expat parser library implementation for Axis 
C++</strong>
  +<br> 
  +<strong>ClientLogPath: The path to the Axis C++ client log</strong>
   <br>
  -<strong>libaxis_xercesc.so is the xercesc parser library implmentation for Axis 
C++</strong>
  -</p>
  -<p>Also server samples are in<br>
  -<strong>$AXISCPP_DEPLOY/lib</strong>
  -<br>Client samples are in <strong>$AXISCPP_DEPLOY/bin</strong>
  -</p>
  -<p>Axis C++ core is independant of the parser layer and transport layer.<br>
  -<br>You can write your own transport or parser library according to the APIs 
provided. Currently Axis C++ provides API implementations for Xerces-c and Expat. It 
also provides it's own client side transport library implementation. In the server 
side deployment, Axis C++ provides two modules that can be loaded into apache1.3 and 
apache 2 as shared libraries.<br>So this sums upto two posibilities.<br>You can deploy 
Axis C++ server<br>&nbsp; &nbsp; On Apache2 with xercesc parser or expat parser(Only 
one parser at a time)<br>&nbsp; &nbsp; On Apache1.3 with xercesc parser or expat 
parser</p>
  -<p>This binary comes with libraries built for apache1.3 and apache2 support and 
parser libraries both for expat and xercesc</p>
  -<p>It also comes with all the sample libraries and sample executables and prebuilt 
tests. But If you need to build the samples and tests for yourself from the sample and 
test source do the following</p>
  -<p>
  -<strong>Sample and Test build process</strong>
  +<br> 
  +<strong>Transport_http: The HTTP transport library</strong>
   <br>
  +<br> 
  +<strong>XMLParser: The XML parser library</strong>
   <br>
  -<strong>cd $AXISCPP_DEPLOY</strong>
  +<br>A sample <strong>axiscpp.conf</strong> file:</p>
   <br>
  -<br>Following step is optional. If you need to generate configure and Makefile.in's 
instead of the provided one's you need to run autogen.sh</p>
   <p>
  -<strong>sh autogen.sh</strong>
  -<br>
  +<strong>LogPath:/usr/local/axiscpp_deploy/log/AxisLog</strong>
   <br>
  -<strong>./configure --prefix=$AXISCPP_DEPLOY</strong>
  -<br>
  -<br>
  -<strong>make</strong>
  -<br>
  -<br>
  -<strong>make install</strong>
  -<br>
  -<br>This will put sample libraries into <strong>$AXISCPP_DEPLOY/lib</strong> and 
sample executables into <strong>$AXISCPP_DEPLOY/bin</strong>
  +<br> 
  +<strong>WSDDFilePath:/usr/local/axiscpp_deploy/etc/server.wsdd</strong>
   <br>
  -<br>Add the following into <strong>$&lt;apache install 
directory&gt;/conf/httpd.conf</strong>
  +<br> 
  +<strong>ClientLogPath:/usr/local/axiscpp_deploy/log/AxisClientLog</strong>
   <br>
  -</p>
  -<p>
  -<strong>LoadModule axis_module modules/libaxiscpp_mod2.so</strong> (in apache1.3 
replace modules with libexec and libaxiscpp_mod2.so with libaxiscpp_mod.so)<br>
  -<strong>&lt;Location /axis&gt;</strong>
   <br> 
  -<strong>SetHandler axis</strong>
  +<strong>XMLParser:/usr/local/axiscpp_deploy/lib/libaxis_xercesc.so</strong>
  +<br>
   <br> 
  -<strong>&lt;/Location&gt;</strong>
  +<strong>Transport_http:/usr/local/axiscpp_deploy/lib/libaxis2_transport.so</strong>
   </p>
  -<p>Now you need the deployment descripter(server.wsdd) to deploy server samples you 
built.<br>By default there is a deployment descripter in 
<strong>$AXISCPP_DEPLOY/conf</strong> to deploy samples</p>
  -<p>In <strong>$AXISCPP_DEPLOY/etc/axiscpp.conf</strong> file you can give paths to 
your log files, configuration files, libraries etc.</p>
  -<p>Now we need to copy apache module(libaxiscpp_mod2.so for apache2 and 
libaxiscpp_mod.so for apache) to the correct places and start apache.<br>To do that 
you can find scripts written in <strong>$AXISCPP_DEPLOY/bin.</strong>
   <br>
  +<p>9. Deploying in apache</p>
  +<p>Now we need to copy apache module (libaxiscpp_mod2.so for apache2 and 
libaxiscpp_mod.so for apache) to the correct places and start apache. To do that you 
can find scripts written in $AXISCPP_DEPLOY/bin.</p>
  +<p>
  +<br> 
   <strong>cd $AXISCPP_DEPLOY/bin</strong>
  -</p>
  -<p>To deploy on apache2<br>
  +<br>
  +<br> To deploy on apache2<br>
   <strong>sh deploy_apache2.sh</strong>
  -</p>
  -<p>To deploy on apache<br>
  +<br>
  +<br> To deploy on apache<br>
   <strong>sh deploy_apache.sh</strong>
  +<br>
   </p>
  -<p>When you run the above script,<br>libaxiscpp_mod2.so is copied to &lt;your 
apache home&gt;/modules folder.<br>libaxis_expat.so is renamed to 
libaxis_xmlparser.so. Also apache is started and 
libaxiscpp_mod2.<br>libaxiscpp_mod2.so is the apache module for Axis C++. This will in 
term load Axis C++ server engine (libserver_engine.so).<br>Note that 
libaxis_xmlparser.so is loaded by the engine dynamically as parsing is required from 
the engine.</p>
  -<p>Note that somewhere in the script above it changes the name libaxis_expat.so to 
libaxis_xmlparser.so.<br>If we use xerces we need to change libaxis_xercesc.so to 
libaxis_xmlparser.so.<br>
  -<br>If you have done installation successfully it will display the Axis C++ welcome 
page when you point to URI <a href="http://localhost/axis";>http://localhost/axis</a>
  -<br>Note: In the axis welcome page all the services in 
<strong>$AXISCPP_DEPLOY/conf/server.wsdd</strong> are listed. This does not 
mean<br>that the libraries corresponding to these services are deployed yet. It merely 
list whatever in the server.wsdd.</p>
  -<p>To run interop samples<br>
  -<strong>cd $AXISCPP_DEPLOY/bin</strong>
  +<p>Note that if you need to use a different parser you need to edit the script. For 
example if you use expat<br>instead of<br>
   <br>
  -<strong>./base localhost 80 etc.</strong>
  -<br>(Check whether there is a script <strong>run_interoptests.sh</strong> in that 
folder which can be used to run all the interop tests)</p>
  -<p>If you don't get it right check with the following list</p>
  -<p>Check whether <strong>AXISCPP_DEPLOY</strong> and 
<strong>LD_LIBRARY_PATH</strong> is set where you start apache<br>Build axis c++ and 
run clients by<br>
  -<br>
  -<strong>echo $AXISCPP_DEPLOY</strong>
  -<br>
  -<strong>echo $LD_LIBRARY_PATH</strong>
  -</p>
  -<p>Check whether you have necessary permissions to create the deploy folder which 
you give in configure option prefix.<br>eg: configure 
--prefix=/usr/local/axiscpp_deploy you need permission to write in /usr/local/. 
Otherwise if you type make install you will get permission problems<br>
  -<br>Check whether paths in server.wsdd are pointing correctly to service or handler 
libraries<br>
  -<br>Check whether <strong>axiscpp.conf</strong> is containing correct entries<br>
  -<br>Check whether Axis C++ can write to log 
folder<strong>($AXISCPP_DEPLOY/log)</strong>
  +<strong>cp -f ${AXISCPP_DEPLOY}/lib/libaxis_xercesc.so 
${AXISCPP_DEPLOY}/lib/libaxis_xmlparser.so</strong>
   <br>
  +<br>you need<br>
  +<strong>cp -f ${AXISCPP_DEPLOY}/lib/libaxis_expat.so 
${AXISCPP_DEPLOY}/lib/libaxis_xmlparser.so</strong>
   <br>
  +<br>Basically what is done in the script are,<br>
  +<br>&nbsp; 1. libaxiscpp_mod2.so is copied to /modules (the corresponding folder in 
apache is libexec)<br>
  +<br> &nbsp; 2. libaxis_xercesc.so or libaxis_expat.so (the parser you use) is 
renamed to libaxis_xmlparser.so.<br>
  +<br> &nbsp; 3. Apache is restarted<br>
  +<br> So if you don't use the scripts you need to do the above three steps 
yourself.</p>
  +<p>10. See Axis C++ in action<br>
  +<br> Now the installation is complete. You can verify that the server side is 
working by accessing the URL http<a 
href="http://localhost/axis";>://localhost/axis</a>/ using your web browser. You should 
get the Axis C++ welcome page and this page will show you a list of deployed services 
as specified by the $AXISCPP_DEPLOY/conf/server.wsdd file.</p>
  +<br>
  +<p>Now you can run a client sample and see if it works.<br>
  +<em>cd $AXISCPP_DEPLOY/bin ./base&nbsp;</em>
   </p>
  -</li>
  -</ul>
  +<p>To help you run several samples at once there is a script named 
<strong>run_interoptests.sh</strong> in $AXISCPP_DEPLOY/bin folder. You can try 
running that as well.<br>
  +</p>
  +<br>
   <div id="pdf" align="right">
   <a href="lininstall-guide.pdf"><img alt="PDF" src="../skin/images/pdfdoc.gif" 
class="skin"><br>
             PDF</a>
  
  
  

Reply via email to