axis-c-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Samisa Abeysinghe <>
Subject Re: Modifications to Linux install guide
Date Fri, 08 Oct 2004 07:40:34 GMT
Hi Damitha,
    Steps 6, 9 and 10 are there so that a user can understand what is really going on.
    I agree that there are scripts to do the stuff. However it is good to let the users know
is really need to be done, so that they can have the flexibility. Also, the info in steps
6, 9, 10
give light to users when it comes to playing around with Axis C++ after installation. Also
I hope
these steps do help with trouble shooting, so that users could check the stuff manually, if
get into trouble with scripts - this will reduce the number of trivial queries to user list.

PS: To be frank enough, I do not use the scripts that much. Hence I would always like to know
to do it on my own.

Thanks for the review. If you got time, please go ahead and put this in the web site.


--- damitha kumarage <> wrote:

> Hi Samisa,
> Your changes are excellent.
> But there are some steps that need attention
> in step 6 is not needed, because when you make install everytinng will
> get installed in $AXISCPP_DEPLOY folder
> You don't need to say enable-sample in cofigure options because by
> default samples and testcases are built. If you don't need them only you
> need to say enable-samples=no
> Why we need steps 9 and 10 when we have scripts to do them and they are
> sufficiently simple and self descriptive.
> I have updated your file and attached here for your reference
> thanks
> damitha
> On Thu, 2004-10-07 at 14:58, Samisa Abeysinghe wrote:
> > Hi All,
> >     I did some major modifications to Linux install guide to make is more compact
> organized.
> >     
> >     I would like this to be reviewed before being put on web site.
> >     
> >     Please have a look and give your comments.
> > Thanks,
> > Samisa...
> > 
> > 
> > 		
> > _______________________________
> > Do you Yahoo!?
> > Declare Yourself - Register online to vote today!
> >
    Axis C++ Linux Installation GuideAxis C++ Linux Installation GuideContents

What You Need
Installing Axis C++


This guide will help you to start with Axis C++. I'll explain theminimum steps needed to build
run Axis C++, and warn you about thecommon pitfalls.

What You Need

You need few helper libraries for parsing XML, WSDL processing andintrospection. You need
to have
the following in order to run Axis C++engine.
      Apache web server  (2.0.x or 1.3.x)  - Youneed to have Apache built with module so support,
hence you need tohave source of Apache web server.
Axis C++ uses Apache web server to host services.

      Expat (1.95.7)  and/or Xerces C++ (2.2.0) XML parser(s)
Axis C++ needs an XML parser to parse SOAP messages and WSDD files. Ithas a parser abstraction
layer that help users select/switch betweenparsers. However only once parser library could
be used
at a time. Currently Expat and Xerces parsers are supported by Axis C++.

Installing Axis C++
1. Install Apache web server. In case you already have an Apacheinstallation, make sure that
modules' are enabled. This is becauseAxis C++ server engine is implemented as an 'so module'.
Apache1.3.x use --enable-module=so; for Apache 2.0.x use --enable-so whenconfiguring. See
web server documentation for more details)

2. Install Expat (1.95.7) and/or Xerces C++ (2.2.0) depending on yourparser preferences. See
respective parser's documentation forinstallation instructions. 

3. Download Axis C++ source or binary distribution and extract the package.

4. Define the following environment variables.
AXISCPP_HOME="Path to Axis C++ source or binary extracted folder"
e.g. AXISCPP_HOME="/my/home/axiscpp"

AXISCPP_DEPLOY="Path to folder where you want to install Axis C++"
e.g. AXISCPP_DEPLOY="/usr/local/axiscpp_deploy"


5. Build Axis C++ (If you downloaded Axis C++ binaries, you can skip this step)
./configure --prefix=$AXISCPP_DEPLOY --with-apache2=/path/to/Apache2
make install

The above set of instructions assume you have Apache 2.0.x web server and Xerces C++ parser.
For more information on build options run ./configure --help.

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
the specified directory given in prefix option
You need global access rights to Axis C++ deploy folder to make sure Axis C++ work properly.
chmod -R 777 $AXISCPP_DEPLOY

6. Configure Apache module
Note: to execute the following steps, you may need to have super user rights on your machine.
Now you need to add to edithttpd.conf file in <path to Apache web server installation>/confand
the following lines at the bottom of that file (assuming youare using Apache 2.0.x):

LoadModule axis_module modules/
<Location /axis>
SetHandler axis

For Apache1.3.x LoadModule line should read as:
LoadModule axis_module libexec/

7. Configure server deployment descriptor file
Now you need the server deployment descriptor (server.wsdd) to deploy server samples you built.
There is a sample deployment descriptor called server.wsdd_linux in $AXISCPP_DEPLOY/etc to
deploy samples.
If you edit this file to your requirements then when you run step 9 it will be turned into
server.wsdd.server.wsdd file is an XML file, and the contents are self descriptive.

8. Set engine wide settings in configuration file
Axis C++ uses a configuration file to let the user specify preferencessuch as log file locations,
transport and parser libs to be used andlocation of deployment descriptor files. A sample
configuration file named axiscpp.conf_linux is installed in $AXISCPP_DEPLOY/etc folder. Edit
thisfile to your reqirements.When you execute step 9 this file will be turnedinto axiscpp.conf

Configuration file has the following Syntax:
The comment character is '#'
WSDDFilePath: The path to the server wsdd file
ClientWSDDFilePath:The path to the client wsdd
LogPath: The path to the Axis C++ server log
ClientLogPath: The path to the Axis C++ client log
Transport_http: The HTTP transport library
XMLParser: The XML parser library

A sample axiscpp.conf file:


9. deploying in apache
Now we need to copy apache module( for apache2 and for
to the correct places and start apache. Todo that you can find scripts written in
                          To deploy on apache2 sh  
                          To deploy on apache 
Have a look into these script files and they are self descriptive and                    
                          when you run them, is copied to /modules     (the corresponding folder in apache is libexec) is renamed to 
Apache is started and is loaded into apache. 
                          Note that if you need to use different parser you need to edit the
script.For example if you use expat 
instead of 
 cp -f ${AXISCPP_DEPLOY}/lib/ ${AXISCPP_DEPLOY}/lib/
 cp -f ${AXISCPP_DEPLOY}/lib/ ${AXISCPP_DEPLOY}/lib/ 
10. See Axis C++ in action
Now the installation is complete. You can verify that the server side is working by accessing
URL http://localhost/axis/using your web browser. You should get the Axis C++ welcome page
page will show you a list of deployed services as specified by the$AXISCPP_DEPLOY/conf/server.wsdd

Now you can run a client sample and see if it works.

To help you run several samples at once there is a script in
$AXISCPP_DEPLOY/bin folder. You can try runningthat as well.


Do you Yahoo!?
Y! Messenger - Communicate in real time. Download now.

View raw message