axis-c-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Stadelmann Josef" <>
Subject AW: Axis 2C embedded server
Date Thu, 21 Feb 2013 13:20:01 GMT
In this case just download the axis2/C kit and build axis2C, then use a
debugger and debug the axis2c_engine.

Very interesting when it starts up; go once through and you will
understand axis much better. i.e. see when things

take place and how they come into effect.

Look for a directory IDES and find various VC VC6 VC9 Projects prepared
as well as a Makefile project for your OS.


But just be made aware, also it is documented on many places; the simple
servers axis2/J and axis2/C are not for production!






Von: zack Hasit [] 
Gesendet: Donnerstag, 21. Februar 2013 01:48
An: Apache AXIS C User List
Betreff: Re: Axis 2C embedded server



   How can I get more information on Inbuilt HTTP server called simple
axis server. I am trying to find out about its architecture. I need to
understand how threads are created and deleted (does it have a thread
pool with max and min threads which are instantiated at start-up ?) and
if its scalable. Word "simple" is making me think there could be
limitations for its use in production scenario ?



On Wed, Feb 20, 2013 at 10:41 AM, Stadelmann Josef
<> wrote:

It is possible using addressing and the proper addressing header
information and configuration records both at client and at server.


i.e. in the header you need to tell the service which client is calling
(request-id) and about the listener/port to contact as well as the
call-back-routine to be called.


The server once finished needs to know to which request-id this
response-id belongs to; but that is not all. it needs to know
clinet-host:port and client-call-back-routine processing the response.


It is not so simple; hence I encourage you to go through the various
echo examples AND OTHERS, client and server side, unless you understand
the asynchronous technology field. Keep in mind you might have an
asynchronous working transport AND you may have an asynchronous working
client/server. This is not the same.


your client might send a request, the server receives it, and allows the
thread to return before it starts working


your client may hand over a request to the transport and continue, the
transport sends the request, the server accepts it and allows the thread
to return, the transport at the client side is happy and maybe signals
that o the client. Later on the server does the same with the response
in reverse direction.


This are two scenarios with many wrinkle and challenge to master.


basically, the service, when it has the result ready after some time,
needs to know the host:port numbers and a call-back-routine in the
client to contact; 

and there is a need to know for the infrastructure axis2-engine to which
request this response belongs to, given your client has multiple
outstanding request belonging to request sent some time ago.


Again: starts simple, keep subsystems small, test it, and integrate when
all subsystems works.


Unless you master your asynchronously working axis2 client talking to
your asynchronous working web service, you don't need more than one
later 2 pc's, and yes: long lasting sessions might be another issue to
look at.





Von: zack Hasit [] 
Gesendet: Dienstag, 19. Februar 2013 18:23
An: Apache AXIS C User List
Betreff: Re: Axis 2C embedded server



I looked at "echo_non_blocking_dual.c". It is a client implementation to
call the service. I was looking for server side. Ill try to explain the

When the echo service gets called following function gets called on
server side : axis2_echo_echo. In this function the node "axiom_node_t
*ret_node" is returned. What I really want to do is that I want to
modify axis2_echo_echo to send the text message (with additional header
info) to another server (lets call this server SERVER-A) using activeMQ
and then go and service next echo request from client and forget about
this one for now.

Meanwhile I'll spawn another thread  (in my application) to read
responses from SERVER-A asynchronously (via activeMQ). Since responses
would be out of order ill identify them based on headerinfo and ill know
where this response needs to be sent to. I want to then send this to
correct client.

Please let me know if this is possible.


On Tue, Feb 19, 2013 at 4:47 AM, Stadelmann Josef
<> wrote:

seek this file in your axis2/c kit "echo_non_blocking_dual.c"

not under samples but user guide clients ... J


And Axis2/C is at version 1.6.0, and the trunk sources have entries from
January 2013, so there is work going on.

rt/http is brand new.




Von: zack Hasit [] 
Gesendet: Dienstag, 19. Februar 2013 02:45
Betreff: Axis 2C embedded server



Hi, I am planning to use Axis 2C. Could someone please help answer this.

1. Is the standalone http server (simple http server) good for
production situation? I ask because it maybe for for testing purposes
only. Any performance concerns with it ?

2. Is Axis being maintained actively ? I ask because there hasn't been a
new release since 2009 ?

3. I need to break request and response in two separate functions. Is
that possible. In samples I see echo implementation where one method
implements service and returns the node to send response. I don't want
to send response on return but at a later time after I do do some other
processing aynchronously. Is there any sample for that ?

Please let me know if there is another place to ask this.






View raw message