damitha 2004/05/06 21:29:37
Modified: targets/axis/cpp lininstall-guide.html lininstall-guide.pdf
linuser-guide.html linuser-guide.pdf
Log:
Revision Changes Path
1.12 +11 -14 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.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- lininstall-guide.html 6 May 2004 10:51:24 -0000 1.11
+++ lininstall-guide.html 7 May 2004 04:29:37 -0000 1.12
@@ -322,7 +322,7 @@
</div>
<p>We tested with the following</p>
<ul>
-<li>Redhat Linux 8.0(2.4.18-14) RedhatLinux9.0(2.4.20-8),
Dabian(2.6.3-1-686)(unstable)</li>
+<li>RedhatLinux9.0(2.4.20-8), Dabian(2.6.3-1-686)(unstable), Redhat
Linux8.0(2.4.18-14)</li>
<li>Apache 1.3 [apache_1.3.27.tar .gz, apache_1.3.28.tar.gz)] (Source), Apache2.0
(source)</li>
<li>expat [expat-1.95.7.tar.gz](Source) </li>
</ul>
@@ -426,12 +426,12 @@
</p>
<p>If you are using xercesc parser copy the xercesc include files</p>
<p>
-<strong>$ cp -rf <xercescinstdirectory>/include/*
$AXISCPP_HOME/include/xercesc/</strong>
+<strong>$ cp -rf <xercescinstdirectory>/include/xercesc/*
$AXISCPP_HOME/include/xercesc/</strong>
</p>
<p>
<strong>$ cd $AXISCPP_HOME</strong>
</p>
-<p>The Folder called deploy in the $AXISCPP_HOME/ should be copied to apache root
folder .Rename the deploy folder as "Axis" . Give all permissions to this folder.<br>
+<p>The Folder called deploy in the $AXISCPP_HOME/ should be copied to your place of
choice. Rename the deploy folder as "Axis" . Give all permissions to this folder.<br>
<br>
<br>
<strong>$ cp -rf $AXISCPP_HOME/deploy /usr/local</strong>
@@ -461,7 +461,7 @@
<p>If you are using expat parser do the following<br>
</p>
<p>set <strong>EXPAT_HOME</strong>="<Your expat installation root folder>"</p>
-<p>set <strong>LD_LIBRARY_PATH="$EXPAT_HOME/lib:AXISCPP_HOME/bin"</strong> (do this
in your .bash_profile)<br>
+<p>set
<strong>LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$EXPAT_HOME/lib:$AXISCPP_HOME/bin:$AXIS_HOME"</strong>
(do this in your .bash_profile)<br>
<br>
<br>
<strong>cd $AXISCPP_HOME/src/soap</strong>
@@ -475,10 +475,7 @@
</p>
<p>If you are using Xerces-c parser do the following</p>
<p>set <strong>XERCESC_HOME</strong>="<Your xercesc installation root
folder>"</p>
-<p>set <strong>LD_LIBRARY_PATH="$XERCESC_HOME/lib"</strong> (do this in your
.bash_profile)<br>
-<br>
-<strong>cp -rf $XERCESC_HOME/include/xercesc/*
$AXISCPP_HOME/include/xercesc/</strong>
-<br>
+<p>set
<strong>LD_LIBRARY_PATH="$XERCESC_HOME/lib:$AXISCPP_HOME/bin:$AXIS_HOME"</strong> (do
this in your .bash_profile)<br>
<br>
<strong>cd $AXISCPP_HOME/src/soap</strong>
<br>
@@ -523,7 +520,7 @@
<br>
<br>
</p>
-<p>libaxiscpp_mod.so (If you built for apache2 this is libaxiscpp_mod2.so) should
have been created in $AXISCPP_HOME/bin directory. Note:- you can give the install path
inside the runconfigure script.</p>
+<p>libaxiscpp_mod.so (If you built for apache2 this is libaxiscpp_mod2.so),
libaxiscpp_client.so, libserver_engine.so, libAdminService.so, adminclient,
simple-axis_server should have been created in $AXISCPP_HOME/bin directory. Note:- you
can give the install path inside the runconfigure script.</p>
<p>Now there is no need to seperately build client side and server side. When
execute build.sh it will lookafter
everything.<br>-----------------------------------------------------------------------</p>
<p>
<strong>NOTE:</strong> If you use apache2.0 following two small changes has to be
done in $AXISCPP_HOME/configure.ac and $AXISCPP_HOME/src/server/Makefile.am)</p>
@@ -542,9 +539,9 @@
<br>Then to deploy it on apache<br>
<br>
</p>
-<p>First you need to edit /usr/local/apache/conf/httpd.conf</p>
+<p>First you need to edit <apache install directory>/conf/httpd.conf</p>
<p>
-<strong>$ vi /usr/local/apache/conf/httpd.conf</strong>
+<strong>$ vi <apache install directory>/conf/httpd.conf</strong>
</p>
<p>At the bottom of the file you have to include following lines and save it.</p>
<p>
@@ -603,7 +600,7 @@
<p>
<strong>$ cd $AXISCPP_HOME</strong>
</p>
-<p>The Folder called deploy in the $AXISCPP_HOME/ should be copied to apache root
folder .Rename the deploy folder as "Axis" . Give all permissions to this folder.<br>
+<p>The Folder called deploy in the $AXISCPP_HOME/ should be copied to a folder of
your choice .Rename the deploy folder as "Axis" . Give all permissions to this
folder.<br>
<br>
<br>
<strong>$ cp -rf $AXISCPP_HOME/deploy /usr/local</strong>
@@ -637,9 +634,9 @@
<br>Then to deploy it on apache<br>
<br>
</p>
-<p>First you need to edit /usr/local/apache/conf/httpd.conf</p>
+<p>First you need to edit <apache install directory>/conf/httpd.conf</p>
<p>
-<strong>$ vi /usr/local/apache/conf/httpd.conf</strong>
+<strong>$ vi <apache install directory>/conf/httpd.conf</strong>
</p>
<p>At the bottom of the file you have to include following lines and save it.</p>
<p>
1.11 +174 -180 ws-site/targets/axis/cpp/lininstall-guide.pdf
<<Binary file>>
1.10 +131 -12 ws-site/targets/axis/cpp/linuser-guide.html
Index: linuser-guide.html
===================================================================
RCS file: /home/cvs/ws-site/targets/axis/cpp/linuser-guide.html,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- linuser-guide.html 6 May 2004 11:12:09 -0000 1.9
+++ linuser-guide.html 7 May 2004 04:29:37 -0000 1.10
@@ -298,6 +298,9 @@
</dd>
<dd>
<a href="#scls">Building Client Side for provided Samples</a>
+</dd>
+<dd>
+<a href="#handlers">Handlers</a>
<br>
</dd>
<dd>
@@ -367,7 +370,7 @@
<p>- WSDLs hosted statistically in the server.</p>
<p>- Standalone server (with HTTP support)</p>
<p>- Web server modules for Apache 1.3 &amp; Apache2 (Linux/Windows)</p>
-<p>- Basic Wrapper Class Generator tool with following functionalities.</p>
+<p>- Basic Wrapper Class Generator tool.</p>
<p>- Web interface to the deployed services and their WSDL s.</p>
<p>- Sample web services and client applications.</p>
<p>- Document style web services support<br>
@@ -378,8 +381,7 @@
<div class="h3">
<h3>Axis C++ now delivers the following key features</h3>
</div>
-<p>- Speed: Axis uses SAX (event-based) parsing to acheive significantly greater
speed than earlier versions of Apache</p>
-<p>SOAP.</p>
+<p>- Speed: Axis uses SAX (event-based) parsing to acheive significantly greater
speed</p>
<p>- Flexibility</p>
<p>- Stability , Component oriented Deployment</p>
<p>- Transport Framework</p>
@@ -465,7 +467,7 @@
<p>
<strong>$cp -f wsdl2ws.jar $AXISCPP_HOME/lib/axis</strong>
</p>
-<p>add this jar to the classpath as well.</p>
+<p>add this jar to the classpath as well.(In the binary distribution you don't need
to create this jar. It is already in $AXISCPP_HOME/lib/axis)</p>
<p>
<a name="Server"></a>
</p>
@@ -501,12 +503,12 @@
<div class="h3">
<h3>Deploying the Service</h3>
</div>
-<p>The Folder called deploy in the <strong>$AXISCPP_HOME/</strong> should be copied
to apache root folder .Rename the deploy folder as <strong>"Axis"</strong> . Give all
permissions to this folder.</p>
+<p>The Folder called deploy in the <strong>$AXISCPP_HOME/</strong> should be copied
to a folder of your choice .Rename the deploy folder as <strong>"Axis"</strong> . Give
all permissions to this folder.</p>
<p>
-<strong>$ cp –rf $AXISCPP_HOME/deploy /usr/local/apache</strong>
+<strong>$ cp –rf $AXISCPP_HOME/deploy /usr/local</strong>
</p>
<p>
-<strong>$ cd /usr/local/apache</strong>
+<strong>$ cd /usr/local</strong>
</p>
<p>
<strong>$ mv deploy Axis</strong>
@@ -516,7 +518,7 @@
</p>
<p>Now set the environment variable <strong>AXIS_HOME</strong> pointing to this
directory.</p>
<p>
-<strong>AXIS_HOME="/usr/local/apache/Axis"</strong>
+<strong>AXIS_HOME="/usr/local/Axis"</strong>
</p>
<p>Note that inside $AXIS_HOME directory there are files called axiscpp.conf_linux
and axiscpp.conf_win. Rename axiscpp.conf_linux to axiscpp.conf. Make sure that
it has read permissions. This file contains key, value pairs of paths used by the Axis
Soap Engine. You can change the WSDDFILEPATH and AXISLOGPATH inside this file
according to your choice.</p>
<p>$ <strong>cd</strong> <strong>$AXISCPP_HOME/samples/server<br>$ sh build.sh<br>
@@ -535,7 +537,7 @@
<br>
<strong><service></strong>
<br>
-<strong><service name ="Calculator" provider ="CPP:RPC" description:"Simple
calculator web service"> <parameter name="classname" value =
"/usr/local/apache/Axis/webservices/libcalculator.so" /></strong>
+<strong><service name ="Calculator" provider ="CPP:RPC" description:"Simple
calculator web service"> <parameter name="classname" value =
"/usr/local/Axis/webservices/libcalculator.so" /></strong>
</p>
<p>
<strong><parameter name= "allowedMethods" value="add sub mul div "/>
</service></strong>
@@ -544,8 +546,6 @@
<p>
<strong></deployment></strong>
</p>
-<p>You have to rename the relevant server.wsdd to match with the Apache version
that you are using. <br>
-</p>
<p>Start the Apache server</p>
<p>
<strong>$ /usr/local/apache/bin/apachectl start</strong>
@@ -656,6 +656,9 @@
</p>
<strong>Restart Apache</strong>
<br>
+<p>
+<a name="scls"></a>
+</p>
<br>
<div class="h3">
<h3>Building Client Side of the provided samples</h3>
@@ -683,7 +686,7 @@
<strong>$ sh build.sh</strong>
<br>
<br>
-<p>sample executables will be created in your current folder.<br>to run the samples
for example</p>
+<p>sample executables will be created in your current folder.<br>to run samples one
by one</p>
<p>
<strong><strong>$ ./base localhost 80 </strong></strong>
</p>
@@ -692,12 +695,128 @@
<br>
</strong></strong>
</p>
+<p>to run all the samples at once<br>sh run_interoptests.sh (Note: local host and
port 80 is assumed)</p>
<p>
<strong></strong>
</p>
<br>
<p>
<strong><strong></strong></strong>
+</p>
+<p>
+<a name="handlers"></a>
+</p>
+<div class="h3">
+<h3>Handlers</h3>
+</div>
+<p>Handlers are pluggable components to Axis C++. We have included a set of sample
handlers for your reference. You could write your own handlers by following the
instructions which are given for the sample Handlers.</p>
+<p>Note: If you are using Client side Handlers you need to enter the following
entry in the AXIS_HOME/axiscpp.conf configuration file.</p>
+<p>CLIENTWSDDFILEPATH:Axis\conf\client.wsdd</p>
+<p>After entering this entry your AXIS_HOME/axiscpp.conf configuration file will
look like:</p>
+<p> AXISLOGPATH:Axis\logs\AxisLog.txt</p>
+<p> WSDDFILEPATH:Axis\conf\server.wsdd</p>
+<p> CLIENTWSDDFILEPATH:Axis\conf\client.wsdd</p>
+<br>
+<p>
+<strong><strong>Testing the sample Handlers</strong></strong>
+</p>
+<p>We have included the following sample Handlers for your reference.</p>
+<p>1) echoStringHeaderHandler (A server side handler sample)</p>
+<p> This sample handler will simply echo (i.e send back) the
string which you send in the SOAP request.</p>
+<p>2) testHandler (A client side handler sample)</p>
+<p> This sample handler will simply add a SOAP Header to the
generated SOAP request.</p>
+<br>
+<p>Please note that these are very primitive sample handlers and are presented here
to give you an idea about writing your own Handlers.</p>
+<br>
+<p>
+<strong><strong>echoStringHeaderHandler</strong></strong>
+</p>
+<p>
+<strong><strong>Building the Sample Handlers in RedHat linux</strong></strong>
+</p>
+<br>
+<p>
+<strong><strong>Building echoStringHeaderHandler (A server side handler
sample)</strong></strong>
+</p>
+<p>The build files are available at
AXISCPP_HOME/samples/server/echoStringHeaderHandler. Change your current directory to
this direcotory and then you could execute the following.</p>
+<p> sh autogen.sh</p>
+<p> sh runconfig</p>
+<p> make</p>
+<p> make install</p>
+<p>The handler so file will be created at
$AXIS_HOME/handlers/custom/echoStringHeaderHandler.</p>
+<p>
+<strong><strong>Configuring the Handler</strong></strong>
+</p>
+<p>Now edit the AXIS_HOME/conf/server.wsdd to include the handler for a particular
service.</p>
+<br>
+<p><service name="Calculator" provider="CPP:RPC" description="Simple Calculator
Axis C++ Service "></p>
+<p><requestFlow name="CalculatorHandlers"></p>
+<p><handler name="ESHHandler"
type="AXIS_HOME/handlers/custom/echoStringHeaderHandler/libeshhandler.so"></p>
+<p></handler></p>
+<p></requestFlow></p>
+<p><responseFlow name="CalculatorHandlers"></p>
+<p><handler name="ESHHandler"
type="AXIS_HOME/handlers/custom/echoStringHeaderHandler/libeshhandler.so"></p>
+<p></handler></p>
+<p></responseFlow></p>
+<p><parameter name="allowedMethods" value="add sub mul div "/></p>
+<p><parameter name="className" value="Axis\webservices\Calculator.dll" /></p>
+<p></service></p>
+<br>
+<p>Note: Make sure you specify the correct path of the handler so in the
server.wsdd file. Replace the AXIS_HOME with the exact relative path which AXIS_HOME
points to. (eg:
type="/usr/local/apache2/Axis/handlers/custom/echoStringHeaderHandler/libeshhandler.so
)</p>
+<p>Now you are almost done to run your server side handler.</p>
+<p>Restart the Apache server and that is it.</p>
+<p>
+<strong><strong>Running the Handler</strong></strong>
+</p>
+<p>Since this Handler is configured to the Calculator web service in the above
step, this Handler will be executed when a client send a SOAP request to the
Calculator web service.</p>
+<br>
+<p>
+<strong><strong>testHandler</strong></strong>
+</p>
+<p>
+<strong><strong>Building the Sample Handlers in RedHat linux</strong></strong>
+</p>
+<br>
+<p>
+<strong><strong>Building testHandler (A client side handler
sample)</strong></strong>
+</p>
+<p>The build files are available at AXISCPP_HOME/samples/client/testHandler. Change
your current directory to this direcotory and then you could execute the following.</p>
+<p> sh autogen.sh</p>
+<p> sh runconfig</p>
+<p> make</p>
+<p> make install</p>
+<p>The handler so file will be created at
$AXIS_HOME/handlers/client/test_handler.</p>
+<p>
+<strong><strong>Configuring the Handler</strong></strong>
+</p>
+<p>Now edit the AXIS_HOME/conf/client.wsdd to include the handler for a particular
service.</p>
+<br>
+<p><service name="Calculator" provider="CPP:DOCUMENT" description="Calculator
web service"></p>
+<p><requestFlow name="CalculatorHandlers"></p>
+<p><handler name="TestHandler"
type="AXIS_HOME/handlers/client/test_handler/libtest_client_handler.so"></p>
+<p></handler></p>
+<p></requestFlow></p>
+<p></service></p>
+<br>
+<p>Note: Make sure you specify the correct path of the handler so in the
client.wsdd file. Replace the AXIS_HOME with the exact relative path which AXIS_HOME
points to. (eg:
type="/usr/local/apache2/Axis/handlers/client/test_handler/libtest_client_handler.so)</p>
+<p>Now you are almost done to run your client side handler.</p>
+<p>Note: If you are using Client side Handlers you need to enter the
CLIENTWSDDFILEPATH entry in the AXIS_HOME/axiscpp.conf configuration file. (See
above)</p>
+<p>
+<strong><strong>Running the Handler</strong></strong>
+</p>
+<p>Since this Handler is configured to the Calculator web service in the above
step, this Handler will be executed when you run the calculator web service client.
(It is at AXISCPP_HOME/samples/client/simple/calculator)</p>
+<br>
+<p>
+<strong><strong>Handler Notes:</strong></strong>
+</p>
+<p>1) You can see the Handler behavior through the TCP Monitor. (TCP Monitor is a
Axis Java tool)</p>
+<p>2) To get an idea of Handlers look at the Handler sample source files.</p>
+<p> a. echoStringHeaderHandler
(AXISCPP_HOME/samples/server/echoStringHeaderHandler)</p>
+<p></p>
+<p> b. testHandler
(AXISCPP_HOME/samples/client/testHandler)</p>
+<p>
+<br>
+<br>
</p>
<p>
<strong><strong><a name="Getting"></a></strong></strong>
1.10 +307 -221 ws-site/targets/axis/cpp/linuser-guide.pdf
<<Binary file>>