axis-c-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Nandika Jayawardana" <>
Subject Re: GSOC: Axis2/C CGI
Date Tue, 29 Apr 2008 10:39:05 GMT
Hi Nikola,

In implementing the axis2 CGI app, you need to understand how axis2
server side works in the context of a web server deployment. I think
going through the source code of axis2 apache module will help you
understand what needs to be done.  You can find the source for it at
"axis2c\src\core\transport\http\server\apache2". There are a set of
functions that works as the axis2's http server side API. These
functions are defined in "axis2_http_transport_utils.h" header. The
server modules work by extracting the http headers and content using
the Web Server's API and using these functions to invoke axis2.

So in the case of CGI, extracting http headers is very simple since
they are available as environment variables. Also the http content is
available in stdin.

Following are the things you need to figure out.

1. Defining the endpoint urls for axis2 services the are deployed under CGI.
 { In case of apache module, the service endpoint url for a service
would be http://<domain>:port/axis2/services/<service name>. Apache
module is configured such that all requests that have
http://<domain>:port/axis2 will be directed to mod_axis2 module. In
case of CGI, I am not sure whether web servers allow such mapping. In
that case one option would be to have the endpoint url something like
http://<domain>:port/cgi-bin/axis2_cgi.exe/services/<service name> }

2. Solving the log file problem in case of concurrent requests.

3. Specifing the axis2 configurations to cgi executable.
These configurations include axis2 repository location , log file
location etc. In case of Apache module, these are defined in the
configuration file.

I guess, once you figure out these, you can reuse most of the code in
axis2 apache module for your implementation as well.


To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message