You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by da...@apache.org on 2004/08/27 09:55:02 UTC

cvs commit: ws-axis/c/deploy/bin deploy_apache2.sh deploy_apache.sh

damitha     2004/08/27 00:55:02

  Modified:    c        mkinstalldirs configure.ac build.sh_sample INSTALL
               c/deploy/bin deploy_apache2.sh deploy_apache.sh
  Log:
  Install process is now like complete for the moment. Updated the INSTALL
  to reflect this.
  
  Revision  Changes    Path
  1.2       +15 -0     ws-axis/c/mkinstalldirs
  
  Index: mkinstalldirs
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/mkinstalldirs,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- mkinstalldirs	16 Aug 2004 11:16:57 -0000	1.1
  +++ mkinstalldirs	27 Aug 2004 07:55:01 -0000	1.2
  @@ -7,6 +7,19 @@
   errstatus=0
   dirmode=""
   
  +if ! test -d '${AXISCPP_DEPLOY}/docs'; then
  +    cp -rf ./docs ${AXISCPP_DEPLOY}
  +fi
  +if ! test -d '${AXISCPP_DEPLOY}/samples'; then
  +    cp -rf ./samples ${AXISCPP_DEPLOY}
  +fi
  +if ! test -d '${AXISCPP_DEPLOY}/tests'; then
  +    cp -rf ./tests ${AXISCPP_DEPLOY}
  +fi
  +if ! test -d '${AXISCPP_DEPLOY}/log'; then
  +    mkdir ${AXISCPP_DEPLOY}/log
  +    chmod 777 ${AXISCPP_DEPLOY}/log
  +fi
   usage="\
   Usage: mkinstalldirs [-h] [--help] [-m mode] dir ..."
   
  @@ -89,6 +102,8 @@
        pathcomp="$pathcomp/"
      done
   done
  +#if !(test -d '${AXISCPP_DEPLOY}/docs')
  +#    cp -rf docs ${AXISCPP_DEPLOY}/
   
   exit $errstatus
   
  
  
  
  1.47      +1 -1      ws-axis/c/configure.ac
  
  Index: configure.ac
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/configure.ac,v
  retrieving revision 1.46
  retrieving revision 1.47
  diff -u -r1.46 -r1.47
  --- configure.ac	17 Aug 2004 13:05:48 -0000	1.46
  +++ configure.ac	27 Aug 2004 07:55:01 -0000	1.47
  @@ -193,7 +193,7 @@
   
   CFLAGS="-Wall -Wshadow ${ENABLELOGGING}"
   CPPFLAGS="-Wall -Wshadow ${ENABLELOGGING}"
  -LDFLAGS="-s -lstdc++"
  +LDFLAGS="-lstdc++"
   AC_PROG_CC
   AC_PROG_CXX
   AC_PROG_INSTALL
  
  
  
  1.5       +18 -3     ws-axis/c/build.sh_sample
  
  Index: build.sh_sample
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/build.sh_sample,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- build.sh_sample	17 Aug 2004 08:25:05 -0000	1.4
  +++ build.sh_sample	27 Aug 2004 07:55:01 -0000	1.5
  @@ -1,15 +1,30 @@
   #!/bin/bash
  +#
  +#   Copyright 2003-2004 The Apache Software Foundation.
  +#
  +#   Licensed under the Apache License, Version 2.0 (the "License");
  +#   you may not use this file except in compliance with the License.
  +#   You may obtain a copy of the License at
  +#
  +#       http://www.apache.org/licenses/LICENSE-2.0
  +#
  +#   Unless required by applicable law or agreed to in writing, software
  +#   distributed under the License is distributed on an "AS IS" BASIS,
  +#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  +#   See the License for the specific language governing permissions and
  +#   limitations under the License.
  +#
  +#
  +#   @author Damitha Kumarage (damitha@opensource.lk, damitha@jkcsworld.com)
  +#
   
   echo "----------------------------------"
   echo "build server, client and samples"
   echo "----------------------------------"
  -#sh autogen.sh
   echo "run configure"
   ./configure --prefix=/usr/local/axiscpp_deploy \
       --with-apache2=/usr/local/apache2 \
       --with-expat=/usr/local/expat1957
   echo "make"
   make 2> build_errors
  -echo "make install"
  -make install
   
  
  
  
  1.21      +179 -10   ws-axis/c/INSTALL
  
  Index: INSTALL
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/INSTALL,v
  retrieving revision 1.20
  retrieving revision 1.21
  diff -u -r1.20 -r1.21
  --- INSTALL	2 Aug 2004 04:20:29 -0000	1.20
  +++ INSTALL	27 Aug 2004 07:55:01 -0000	1.21
  @@ -34,10 +34,12 @@
   httpd-2.0.48(source)
   apache_1.3.27(source)
   
  -Note: In my environment I have
  -autoconf 2.57, automake 1.6.3, libtool 1.4.3,  gcc 3.2.2 
  -
  -If you use the generated configure script
  +Note:
  +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.
  +autoconf 2.57, automake 1.6.3, libtool 1.4.3,  gcc 3.2.2
   
   
   You can download the Axis C++ source or binary from one of the apache mirror sites 
  @@ -47,15 +49,20 @@
   
   You can get xercesc from the uri http://www.xml.apache.org/xerces-c/download.cgi
   
  +Source distribution installation
  +================================
  +
  +Unzip and untar the tgz ball.
   You must define some environment variables in order to build.
   AXISCPP_HOME is where you checkout Axis C++
  -
   ------------------------------------------------------------
   AXISCPP_HOME="/usr/local/axiscpp"
   AXISCPP_DEPLOY="/usr/local/axiscpp_deploy"
  -LD_LIBRARY_PATH="$AXISCPP_DEPLOY/lib:$LD_LIBRARY_PATH"
  +LD_LIBRARY_PATH="$AXISCPP_DEPLOY/lib:<path to parser library you use>"
   export AXISCPP_HOME AXISCPP_DEPLOY LD_LIBRARY_PATH
   ------------------------------------------------------------
  +AXISCPP_HOME is where you extracted the source distribution.
  +AXISCPP_DEPLOY is where Axis C++ will be deployed
   
   Axis C++ core is independant of the parser layer and transport layer.
   You can write your own transport or parser library according to the APIs provided. Currently Axis C++
  @@ -77,12 +84,14 @@
      with Xerces parser support only
      with both parser support
   
  -You can choose these selections on when you configure
  +You can choose these selections when you configure
   
   The build process
   
   cd $AXISCPP_HOME
  -================
  +
  +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
   
   sh autogen.sh
   
  @@ -120,7 +129,7 @@
   --enable-libwww : By default libwww client transport library  is built. If you don't need it
                     say no to this.
   
  -You may rename and edit build.sh_sample for one step builing and installing.
  +You may rename and edit build.sh_sample for one step configureing and building
   
   Once you finished, have a look at $AXISCPP_HOME/build_errors. Most probably you will see many warnings.
   Just ignore them. But if you see any errors it means that build was 
  @@ -230,10 +239,170 @@
   * Check whether you have necessary permissions to create the deploy folder which
     you give in configure option prefix.
     eg: configure --prefix=/usr/local/axiscpp_deploy you need permission to write in
  -  /usr/local/
  +  /usr/local/. Otherwise if you type make install you will get permission problems
   
   * Check whether  paths in server.wsdd are pointing correctly to service or hanlder libraries
   
   * Check whether axiscpp.conf is containing correct entries
   
   * Check whether Axis C++  can write to log folder($AXISCPP_DEPLOY/log)
  +
  +
  +Binary distribution installation
  +================================
  +
  +Unzip and untar the tgz ball.
  +
  +You must define some environment variables first.
  +------------------------------------------------------------
  +AXISCPP_DEPLOY="/usr/local/axiscpp_deploy"
  +LD_LIBRARY_PATH="$AXISCPP_DEPLOY/lib:<path to parser library you use>"
  +export AXISCPP_DEPLOY LD_LIBRARY_PATH
  +------------------------------------------------------------
  +AXISCPP_DEPLOY is where you extracted the binary distribution
  +
  +Have a look at the folder $AXISCPP_DEPLOY/lib to see what is there
  +
  +libaxiscpp_mod.so is apache module which is loaded when apache loads
  +libaxiscpp_mod2.so is apache2 module which is loaded when apache2 loads
  +libserver_engine.so is the Axis C++ server engine which is loaded by libaxis_mod(2).so module
  +libaxiscpp_client.so is Axis C++ client library
  +libaxis_transport.so is the Axis C++ client transport library
  +libaxis_expat.so is the expat parser library implementation for Axis C++
  +libaxis_xercesc.so is the xercesc parser library implmentation for Axis C++
  +
  +Also server samples are in
  +$AXISCPP_DEPLOY/lib
  +
  +Client samples are in $AXISCPP_DEPLOY/bin
  +
  +Axis C++ core is independant of the parser layer and transport layer.
  +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.
  +So this sums upto two posibilities.
  +You can deploy Axis C++ server 
  +    on Apache2 with xercesc parser or expat parser(Only one parser at a time)
  +    on Apache1.3 with xercesc parer or expat parser
  +
  +This binary comes with libraries built for apache1.3 and apache2 support and 
  +parser libraries both for expat and xercesc
  +
  +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
  +
  +Sample and Test build process
  +
  +cd $AXISCPP_DEPLOY
  +
  +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
  +
  +sh autogen.sh
  +
  +./configure --prefix=$AXISCPP_DEPLOY
  +
  +make
  +
  +make install
  +
  +This will put sample libraries into $AXISCPP_DEPLOY/lib and
  +sample executables into $AXISCPP_DEPLOY/bin
  +
  +Now you need to add to $<apache install directory>/conf/httpd.conf
  +$ vi <apache install directory>/conf/httpd.conf
  +
  +At the bottom of the file you have to include following lines and save it.
  +-------------------------------------------------
  +LoadModule axis_module modules/libaxiscpp_mod2.so (in apache1.3 replace modules with libexec and libaxiscpp_mod2.so with libaxiscpp_mod.so)
  +
  +<Location /axis>
  +
  +SetHandler axis
  +
  +</Location> 
  +---------------------------------------------------
  +
  +Now you need the deployment descripter(server.wsdd) to deploy server samples you built.
  +By default there is a deployment descripter in $AXISCPP_DEPLOY/conf to
  +deploy samples
  +
  +In $AXISCPP_DEPLOY/etc/axiscpp.conf file you can give paths to
  +your log files, configuration files libraries etc.
  +------------------------------------------------------------------------------------------
  +# The comment character is '#'
  +#Available directives are as follows
  +#(Some of these directives may not be implemented yet)
  +#
  +#WSDDFilePath:The path to the server wsdd
  +#LogPath:The path to the axis log
  +#ClientLogPath:The path to the axis client log
  +#ClientWSDDFilePath:The path to the client wsdd
  +#Transport_http:The HTTP transport library
  +#Transport_smtp:The SMTP transport library
  +#XMLParser:The xml parser library
  +
  +LogPath:/usr/local/axiscpp_deploy/log/AxisLog
  +WSDDFilePath:/usr/local/axiscpp_deploy/etc/server.wsdd
  +ClientLogPath:/usr/local/axiscpp_deploy/log/AxisClientLog
  +XMLParser:/usr/local/axiscpp_deploy/lib/libaxis_xmlparser.so
  +Transport_http:/usr/local/axiscpp_deploy/lib/libaxis_transport.so
  +
  +-----------------------------------------------------------------------------------------
  +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.
  +cd $AXISCPP_DEPLOY/bin
  +
  +To deploy on apache2
  +sh deploy_apache2.sh
  +
  +To deploy on apache
  +sh deploy_apache.sh
  +
  +When you run the above script,
  +libaxiscpp_mod2.so is copied to <your apache home>/modules folder.
  +libaxis_expat.so is renamed to libaxis_xmlparser.so. Also apache is started and libaxiscpp_mod2.so is loaded into apache.
  +libaxiscpp_mod2.so is the apache module for Axis C++. This will in term load Axis C++ server engine
  +(libserver_engine.so).
  +Note that libaxis_xmlparser.so is loaded by the engine dynamically as parsing is required from the
  +engine.
  +
  +Note that somewhere in the script above it change
  +the name libaxis_expat.so to libaxis_xmlparser.so.
  +If we use xerces we need to change
  +libaxis_xercesc.so to libaxis_xmlparser.so.
  +
  +If you have done installation successfully it will display the Axis C++ welcome page when you point to URI http://localhost/axis .
  +Note: In the axis welcome page all the services in $AXISCPP_DEPLOY/conf/server.wsdd are listed. This does not mean
  +that the libraries corresponding to these services are deployed yet. It merely list whatever in the server.wsdd.
  +
  +To run interop samples
  +cd $AXISCPP_DEPLOY/bin
  +./base localhost 80 etc.
  +
  +(Check whether there is a script run_interoptests.sh in that folder which 
  + can be used to run all the interop tests)
  +
  +If you don't get it right check with the following list
  +
  +
  +* Check whether AXISCPP_DEPLOY and LD_LIBRARY_PATH is set where you start apache
  +  build axis c++ and run clients by
  +  echo $AXISCPP_DEPLOY
  +  echo $LD_LIBRARY_PATH
  +
  +* Check whether you have necessary permissions to create the deploy folder which
  +  you give in configure option prefix.
  +  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
  +
  +* Check whether  paths in server.wsdd are pointing correctly to service or hanlder libraries
  +
  +* Check whether axiscpp.conf is containing correct entries
  +
  +* Check whether Axis C++  can write to log folder($AXISCPP_DEPLOY/log)
  +
  +
  
  
  
  1.3       +18 -6     ws-axis/c/deploy/bin/deploy_apache2.sh
  
  Index: deploy_apache2.sh
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/deploy/bin/deploy_apache2.sh,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- deploy_apache2.sh	29 Jul 2004 12:37:50 -0000	1.2
  +++ deploy_apache2.sh	27 Aug 2004 07:55:01 -0000	1.3
  @@ -1,15 +1,27 @@
   #!/bin/bash
  +#
  +#   Copyright 2003-2004 The Apache Software Foundation.
  +#
  +#   Licensed under the Apache License, Version 2.0 (the "License");
  +#   you may not use this file except in compliance with the License.
  +#   You may obtain a copy of the License at
  +#
  +#       http://www.apache.org/licenses/LICENSE-2.0
  +#
  +#   Unless required by applicable law or agreed to in writing, software
  +#   distributed under the License is distributed on an "AS IS" BASIS,
  +#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  +#   See the License for the specific language governing permissions and
  +#   limitations under the License.
  +#
  +#
  +#   @author Damitha Kumarage (damitha@opensource.lk, damitha@jkcsworld.com)
  +#
   
   rm /usr/local/apache2/modules/libaxiscpp_mod2.so
   rm ../lib/libaxis_xmlparser.so
   cp -f ../lib/libaxiscpp_mod2.so /usr/local/apache2/modules/
   cp -f ../lib/libaxis_expat.so ../lib/libaxis_xmlparser.so
  -if test -d ../log; then
  -    echo "Checking log folder..."
  -else
  -    mkdir ../log
  -fi
  -chmod 777 ../log
   cp -f ../etc/server.wsdd_linux ../etc/server.wsdd
   cp -f ../etc/client.wsdd_linux ../etc/client.wsdd
   cp -f ../etc/axiscpp.conf_linux ../etc/axiscpp.conf
  
  
  
  1.3       +19 -6     ws-axis/c/deploy/bin/deploy_apache.sh
  
  Index: deploy_apache.sh
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/deploy/bin/deploy_apache.sh,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- deploy_apache.sh	29 Jul 2004 12:37:50 -0000	1.2
  +++ deploy_apache.sh	27 Aug 2004 07:55:01 -0000	1.3
  @@ -1,15 +1,28 @@
   #!/bin/bash
   
  +#
  +#   Copyright 2003-2004 The Apache Software Foundation.
  +#
  +#   Licensed under the Apache License, Version 2.0 (the "License");
  +#   you may not use this file except in compliance with the License.
  +#   You may obtain a copy of the License at
  +#
  +#       http://www.apache.org/licenses/LICENSE-2.0
  +#
  +#   Unless required by applicable law or agreed to in writing, software
  +#   distributed under the License is distributed on an "AS IS" BASIS,
  +#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  +#   See the License for the specific language governing permissions and
  +#   limitations under the License.
  +#
  +#
  +#   @author Damitha Kumarage (damitha@opensource.lk, damitha@jkcsworld.com)
  +#
  +
   rm /usr/local/apache/libexec/libaxiscpp_mod.so
   rm ../lib/libaxis_xmlparser.so
   cp -f ../lib/libaxiscpp_mod.so /usr/local/apache/libexec/
   cp -f ../lib/libaxis_expat.so ../lib/libaxis_xmlparser.so
  -if test -d ../log; then
  -    echo "Checking log folder..."
  -else
  -    mkdir ../log
  -fi
  -chmod 777 ../log
   cp -f ../etc/server.wsdd_linux ../etc/server.wsdd
   cp -f ../etc/client.wsdd_linux ../etc/client.wsdd
   cp -f ../etc/axiscpp.conf_linux ../etc/axiscpp.conf