blob: 8f63c672f820713e7e50b2b6e389e0d5639c2452 [file] [log] [blame]
The release comes in two forms, source and binary.
To get both the binary and source distribution, you need libxml2 from http://xmlsoft.org/downloads.html
(NOTE: most Linux systems has libxml2 by default. On Windows you need to download and install libxml2)
Table of Contents
=================
1. Getting Axis2C working with the binary release on Linux
2. Getting Axis2C working with the source release on Linux
3. Getting Axis2C working with the binary release on Windows (win32)
3.1 Requirements
3.2 Binaries in the release
3.3 Running the binaries
4. Getting Axis2c working with the source release on Windows (win32)
4.1 Requirements
4.2 Editing Configure.in file
4.3 Compiling the source
4.4 Running the binaries
5. Installing Apache2 Web Server integration module (mod_axis2)
1. Getting Axis2C working with the binary release on Linux.
==========================================================
1. Extract the binary tar package to a folder.
Set AXIS2C_HOME environment variable pointing to the location where you have extracted Axis2C
AXIS2C_HOME='/your_path_to_axis2c'
export AXIS2C_HOME
Note: You will need to set AXIS2C_HOME only if you need to run axis2c samples or tests. The
reason is that from sample and test codes it used AXIS2C_HOME to get path to axis2c. To write
your own services or clients this is not a requirement.
2. Run the simple axis server:
cd /your_path_to_axis2c/bin
./axis2_http_server
This will start the simple axis server on port 9090. To see the possible command line options run
./axis2_http_server -h
NOTE: If you run into shared lib problems, set the LD_LIBRARY_PATH
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/your_path_to_axis2c/lib
3. Run the sample clients in a new shell
cd /your_path_to_axis2c/bin/samples
./echo
This will invoke the echo service.
./math
This will invoke the math service.
To see the possible command line options for sample clients run them with '-h' option
NOTE: If you run into shared lib problems, set the LD_LIBRARY_PATH
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/your_path_to_axis2c/lib
2. Getting Axis2C working with the source release on Linux.
==========================================================
1. Extract the source tar package to a folder.
2. Set AXIS2C_HOME environment variable pointing to the location where you want to install Axis2C.
AXIS2C_HOME='/your_desired_path_to_axis2c_installation'
export AXIS2C_HOME
NOTE: If you run into shared lib problems, set the LD_LIBRARY_PATH
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/your_path_to_axis2c/lib
3. Then go to the folder where you extracted the source
cd /your_path_to_axis2c_source
4. Set parser location
Include path and library path to parser should be set. For libxml2 this is automatically
resolved by configure script.
5. Build the source
This can be done using the following command sequence:
./configure
make
make install
use './configure --help' for options.
NOTE: If you don't provide a --prefix configure option, it will by default install into
/usr/local/axis2c folder.
If you need to get the samples working, you also need to build the samples.
To build samples:
cd samples
./configure --prefix=${AXIS2C_HOME}
make
make install
6. go to where you installed axis2c.
7. Start simple axis server
cd axis2c/bin
./axis2_http_server
This will start the simple axis server on port 9090. To see the posible command line options run:
./axis2_http_server -h
8. Run the sample clients in a new shell
cd bin/samples
./echo
This will invoke the echo service.
./math
This will invoke the math service.
To see the possible command line options for sample clients run them with '-h' option
3. Getting Axis2C working with the binary release on Windows.
============================================================
3.1 Requirements
----------------
* the binaries shipped with this version is compiled with Microsoft visual studio compiler (cl)
(Note: you can download microsoft VSExpress2005 editon from microsoft website and intall it to run these binaries)
* You also need the following dlls
- libxml2.dll [http://www.xmlsoft.org - download the version >= libxml2-2.6.20.win32]
- iconv.dll [http://www.xmlsoft.org - download the version >= iconv-1.9.1.win32]
- zlib1.dll [http://www.xmlsoft.org - download the version >= zlib-1.2.3.win32]
3.2 Binaries in the release
---------------------------
Extract the binary distribution to a folder of your choice. (example: C:\axis2c-M0.4)
The c:\axis2c-M0.4 folder structure is as follows.
axis2c-M0.4
|- bin - server and other executables
|- samples - samples go here
|
|- lib - library modules
|- services - deployed services
|- modules - deployed modules
|- include - all include files of axis2
|- logs - system and client logs are written to this folder
Copy libxml2.dll, iconv.dll and zlib1.dll downloaded to C:\axis2c-M0.4\lib
3.3 Running the binaries
------------------------
You need to set couple of environment variables before you can run the server and samples.
Set the varibale AXIS2C_HOME to the deploy folder (C:\axis2c-M0.4)
Add the path to lib directory to PATH variable (%AXIS2C_HOME%\lib)
Now everything is set to run the server!
C:\axis2c-M0.4\bin>axis2_http_server.exe
You should see the message
Started Simple Axis2 HTTP Server...
The log is by default created under %AXIS2C_HOME%\logs folder with the name axis2.log.
(Note: you may provide command line options to change the default behaviour. Type "axis2_http_server.exe -h" to learn about the usage)
Now you can run any sample client deployed under %AXIS2C_HOME%\bin\samples\
Example:
C:\axis2c-M0.4\bin\samples>echo.exe
4. Getting Axis2C working with the source release on Windows.
============================================================
4.1 Requirements
----------------
* the makefile shipped with this version needs Microsoft visual studio compiler (cl) and nmake build tool
(Note: you can download microsoft VSExpress2005 editon and Platform SDK from microsoft website. You will need to add the path to Platform SDK Include and Lib folders to makefile)
* You also need
- libxml2 [http://www.xmlsoft.org - download the version >= libxml2-2.6.20.win32]
- iconv [http://www.xmlsoft.org - download the version >= iconv-1.9.1.win32]
- zlib [http://www.xmlsoft.org - download the version >= zlib-1.2.3.win32]
4.2 Editing configure.in file
-----------------------------
The default places for libxml2 and iconv are speceficed in configure.in.
Example:
Default location for libxml2 is C:\libxml2
You can either extract libxml2 to this folder. Folder structure should look like the following.
C:\libxml2
|- include
|- bin
|- lib
Or extract to whatever place of your choice and edit the configure.in accordingly.
You need to have zlib1.dll in a library path. You may copy this dll to libxml2/lib.
4.3 Compiling the source
------------------------
Extract the source distribution to a folder of your choice. (Example: C:\axis2c)
Open a DOS shell
cd C:\axis2c\build\win32
C:\axis2c\build\win32>vcvars32.bat to access .Net tools (Note: You may need to set the environment PATH variable to vcvars32.bat if windows complaints that it cannot find this bat)
C:\axis2c\build\win32>nmake install
Thats it! This will build the system and create a directory named deploy under build directory.
The deploy folder structure is as follows.
deploy
|- bin - server and other executables
| |- samples - samples go here
|
|- lib - library modules
|- services - deployed services
|- modules - deployed modules
|- include - all include files of axis2
|- logs - system and client logs are written to this folder
4.4 Running the binaries
------------------------
You need to set couple of environment variables before you can run the server and samples.
Set the varibale AXIS2C_HOME to the deploy folder (C:\axis2c\build\deploy)
Add the path to lib directory to PATH variable (%AXIS2C_HOME%\lib)
Copy libxml2.dll, iconv.dll and zlib1.dll to axis2c lib folder (%AXIS2C_HOME%\lib)
Now everything is set to run the server!
C:\axis2c\build\deploy\bin>axis2_http_server.exe
You should see the message
Started Simple Axis2 HTTP Server...
The log is by default created under %AXIS2C_HOME%\logs folder with the name axis2.log.
(Note: you may provide command line options to change the default behaviour. Type "axis2_http_server.exe -h" to learn about the usage)
Now you can run any sample client deployed under %AXIS2C_HOME%\bin\samples\
Example:
C:\axis2c\build\deploy\bin\samples>echo.exe
5. Installing Apache2 Web Server integration module (mod_axis2)
---------------------------------------------------------------
5.1 Building mod_axis2 from source tree
5.1.1 On Linux Platform
* Provide the apache2 include files location as configure option
./configure --with-apache2="<apache2 include files location>" [other configure options]
- Some apache2 distributions install APR (Apache Portable Runtime) include files in a seperate location which is requred to build mod_axis2. In that case use
./configure --with-apache2="<apache2 include files location>" --with-apr="<apr include files location>" [other configure options]
* Then build the source tree
make
make install
- This will install mod_axis2.so into your "<your_path_to_axis2c>/lib"
5.1.2 On Win32 platform
* Provide the apache2 location in configure.in file in APACHE_INSTALL_DIR
eg : APACHE_INSTALL_DIR = E:\Apache
* After compiling the sources (as described in section 4.3) build the mod_axis2.dll by issuing the command "nmake axis2_apache_module".
* This will build the mod_axis2.dll and copy it to %AXIS2C_HOME%\lib directory.
eg: C:\axis2c\build\deploy\lib
5.2 Deploying in Apache2 Web Server
Note: To do the following tasks you might need super user privileges in your machine.
* Copy the mod_axis2 (libmod_axis2.so.0.0.0 on Linux and mod_axis2.dll in Windows) to "<apache2 modules directory>" (eg: /usr/lib/apache2/modules in Linux or C:\Apache2\modules in Windows) as mod_axis2.so
eg: cp $AXIS2C_HOME/lib/libmod_axis2.so.0.0.0 /usr/lib/apache2/modules/mod_axis2.so
copy C:\axis2c\build\deploy\lib\mod_axis2.dll C:\Apache2\modules\mod_axis2.so
* Edit the Apache2's configuration file (generally httpd.conf) and add the following directives
LoadModule axis2_module <apache2 modules directory>/mod_axis2.so
<Location /axis2>
SetHandler axis2_module
RepoPath <axis2 repository path>
LogFile <axis2 log file path>
Axis2LogLevel LOG_LEVEL
</Location>
* LOG_LEVEL can be one of following
AXIS2_LOG_LEVEL_CRITICAL - Log critical errors only
AXIS2_LOG_LEVEL_ERROR - Log errors critical errors
AXIS2_LOG_LEVEL_WARNING - Log warnings and above
AXIS2_LOG_LEVEL_INFO - Log info and above
AXIS2_LOG_LEVEL_DEBUG - Log debug and above (default)
AXIS2_LOG_LEVEL_TRACE - Log trace messages
* Use forward slashes "/" for path seperators in <apache2 modules directory>, <axis2 repository path> and <axis2 log file path>
* Make sure that the apache2 user has correct permissions to above paths
- Read permission to the repository
- Write permission to the log file
* Restart apache2 and test whether mod_axis2 module is loaded by typing the URL
http://localhost/axis2/services
Hope you would enjoy the Axis2 C soap engine :)