axis-c-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Samisa Abeysinghe <>
Subject Re: Services Hosted by Non-Webservers
Date Tue, 07 Dec 2004 01:41:52 GMT
Hi Jared,
    Axis C++ has a "transport abstraction layer" which is used by both the client side as
well as
the server side. 
    Reading through your requirement, as I understood, you could use the transport abstraction
layer API to write your own server side transport to get your job done. Please have a look
at the
simple_axis_server (in src/server/simple_axis_server/) for a sample standalone implementation
the transport API. Sometimes, you would be able to use this simple axis server as it is for
purpose and it can be run on whichever port you want.
    If you want to get an idea on how to implement your own server side transport, please
have a
look at the SimpleAxisTransport class (in src/server/simple_axis_server/). This implements
transport abstraction API defined in src/transport/SOAPTransport.h.



--- wrote:

> We are looking at migrating some of our backend code that uses Apache SOAP
> 1 and MS SOAP 2 to use Axis (Java and C++).  Here is a basic overview of
> how it all works today:
> We have two applications (one java, one C++).  Each application exposes a
> single service and consumes the service of the other.  To do this, we use
> the two SOAP libraries described earlier to generate and process the SOAP
> envelopes for each call.  We handle all the network communication of these
> envelopes ourselves (no http server, etc).  This allows us to embed the
> applications, but it also allows us to easily expose multiple instances of
> the same service on the same machine. This is important since there can be
> multiple instances of one of these apps.  Each instance of app A must
> expose an instance of service A as application B will consume all currently
> running instances of service A.  To accomplish this, the port the service
> is exposed on is defined at runtime and discovered with calls to a broker
> we have created that manages all this information on the fly.
> So, its a largely basic RPC style communication, where we drive the
> networking.  I'd like to use the built in functionality of Axis as much as
> possible.  Is there a standard transport layer that can be used to embedd
> and expose a service in an application using Axis that both the Java and
> C++ versions can use.  If so, can I define the port it opens on the fly
> (both for exposing purposes and consuming)?  If not, is there an easy way
> to write the transport layer ourselves so that we can embed them this way?
> Jared McIntyre
> Development Tools
> PeopleSoft
> 303-334-5695

Do you Yahoo!? 
Take Yahoo! Mail with you! Get it on your mobile phone. 

View raw message