axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From sanjayas...@opensource.lk
Subject Re: [Axis C++] mod_axis & Interface call backs
Date Tue, 29 Jul 2003 08:09:37 GMT
On Tue, 29 Jul 2003 03:09:41 -0400, Lilantha Darshana wrote
> Hi Sanjaya,
> 
> I'm bit more curious about how you have implemented the following functions:
> 
> send_response_bytes(...)
> get_request_bytes(...)
> send_transport_information(...)
> 
> Would you elaborate on why you want to have three functions like 
> this? & are there any specific reason to have those as three 
> function?  

The way it was implemented earlier was to pass a structure (i.e.soapstream. 
this name should now change) to the method process (now process_request) in 
Axis.cpp. The sturcture had members ip_soap (char *) and op_soap (char *). 
where ip_soap contained the entire request read in the module. Once the soap 
message was processed the the op_soap member would contain the soap response.

There is an inefficiency in getting the request and dispatching the request 
this way since while reading the request at the module side and building the 
response in the axis engine side would involve either strcat's and malloc's 
or string appending which I guess comes to the same thing.
So the change is to get the soap request as and when required and dispatch 
the response when parts of it have been built (say build the soap envelop for 
the response then dispatch it by calling send_response_bytes() then start 
building the soap body for the response). 

This is necessary for implementing the pull parse. So this is a major design 
aspect.

The send transport information function is to send transport specific 
information to the transport listener. In Apache's case the http headers.


>If I'm not going to keep a global handler for 
> "request_rec" for Apache web server module, is it possible to imple. 
> these function. 

I am not sure whether this can be done.

> 
> Do you have any design concerns if I change  these to satisfy 
> multiple server support HTTP handlers like servlet & IIS?
> 
> regards
> Lilantha

could you elaborate in what way you want to make these changes? As I said 
before this is a major design issue so that we can implement pull parsing.

regards,
sanjaya.


--
Lanka Software Foundation (http://www.opensource.lk)
Promoting Open-Source Development in Sri Lanka


Mime
View raw message