You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by Colin Surprenat <ng...@metaxia.com> on 2005/01/28 16:19:11 UTC

My solution to embed axis in a non webapp

Hi,

After looking at ways to embed Axis into my application that does not 
run in the context of a web application server & servlet I came up with 
the following solution. Ultimately I wanted to be able to control Axis 
programmatically but my solution is an acceptable compromise and is 
quite simple to put in place.

To put things in context, my application is a kind of (multi-threaded) 
transaction router that processes, transform and communicate messages 
with the outside world. My need was first to provide SOAP as an inbound 
protocol to my application to receive arbitrary XML messages (message 
service style) and then to expose some other functions (RPC services style).

Basically the idea is to run Axis in the same JVM as my application. For 
that I integrated Jetty in embedded mode which I control 
programmatically. I then added Axis as a web application for Jetty, the 
standard way.

Since Axis and my application are running in the save JVM, my inbound 
message SOAP service class can simply use my application API 
queuing/messaging classes to forward the inbound SOAP documents to my 
application. Same for my RPC style services, they just call my 
application API as needed.

I just thought I'd share my idea and hope it might be useful to others.

Colin.