You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by Dean Hiller <de...@xsoftware.biz> on 2005/08/29 02:46:29 UTC
soap stack?
Does axis have a reusable soap stack in it somewhere? I have built a
pojo framework(kind of like spring, except superfast as it is not on
J2EE). I wanted to embed some soap stack somehow though, as this
framework allows asynchonous methods on services(ie. not just the client
but services too). What I mean by this is a Service can have the old
synchronous method like so
public Response method(Request r); //blocks the platform thread until
request is totally processed
BUT, can also have a method like so
public void method(Request r, CallbackHandler h); //allows service to
release a platform thread while request is processed
Remember, those are service methods, not client methods(Of course,those
methods are allowed in clients too). The only thing I need now is some
kind of object to soap message converter(and soap message to objects of
course too). I have planned on doing the routing myself but maybe axis
has something there too?
thanks,
dean
Re: [Axis2] Re: soap stack?
Posted by Dean Hiller <de...@xsoftware.biz>.
Is there an architecture doc or something as I dive into the axis2 code?
I am a little confused. I am reading Axis2 gets dropped in a servlet
container. I thought the servlet containers where all synchronous....
ie. for the method |*doGet
<http://java.sun.com/products/servlet/2.2/javadoc/javax/servlet/http/HttpServlet.html#doGet%28javax.servlet.http.HttpServletRequest,%20javax.servlet.http.HttpServletResponse%29>*(HttpServletRequest
<http://java.sun.com/products/servlet/2.2/javadoc/javax/servlet/http/HttpServletRequest.html> req,
HttpServletResponse
<http://java.sun.com/products/servlet/2.2/javadoc/javax/servlet/http/HttpServletResponse.html> resp)|
one usually has to write the response into HttpServletResponse before
this method returns. This means, the method blocks the whole time. Is
there a servlet container out there where this is not true?
Realize, I can't do a callback as it can't penetrate the firewall.
thanks,
dean
Eran Chinthaka wrote:
> Hi Dean,
>
> Dean Hiller wrote:
>
>> Does axis have a reusable soap stack in it somewhere? I have built a
>> pojo framework(kind of like spring, except superfast as it is not on
>> J2EE). I wanted to embed some soap stack somehow though, as this
>> framework allows asynchonous methods on services(ie. not just the
>> client but services too). What I mean by this is a Service can have
>> the old synchronous method like so
>>
>> public Response method(Request r); //blocks the platform thread until
>> request is totally processed
>>
>> BUT, can also have a method like so
>>
>> public void method(Request r, CallbackHandler h); //allows service to
>> release a platform thread while request is processed
>
>
> Yes you can do this in the server side as well if you use Axis2.
> Create a MessageReceiver extending from
> AbstractInOutSyncMessageReceiver, then you have your expected behaviour.
> Earlier I thought you wanted the async behaviour in client side.
>
> -- Chinthaka
>
>>
>> Remember, those are service methods, not client methods(Of
>> course,those methods are allowed in clients too). The only thing I
>> need now is some kind of object to soap message converter(and soap
>> message to objects of course too). I have planned on doing the
>> routing myself but maybe axis has something there too?
>>
>> thanks,
>> dean
>>
>>
>
Re: [Axis2] Re: soap stack?
Posted by Dean Hiller <de...@xsoftware.biz>.
ignore that last question. I think I get it now. Now, what I am
wondering is what part of axis2 would I look at for what I need. I am
using nio so all my sockets are non-blocking in my platform. I see
axis2 has a tcp transport. I am wondering if I take out that code, this
may be compatible embedded in my platform. *Where is the tcp transport
code?* and where woudl the axis2 api that it uses be as I most likely
don't want to use the tcp transport code(I am betting that is blocking
io and I really want to be using non-blocking nio).
thanks,
dean
Eran Chinthaka wrote:
> Hi Dean,
>
> Dean Hiller wrote:
>
>> Does axis have a reusable soap stack in it somewhere? I have built a
>> pojo framework(kind of like spring, except superfast as it is not on
>> J2EE). I wanted to embed some soap stack somehow though, as this
>> framework allows asynchonous methods on services(ie. not just the
>> client but services too). What I mean by this is a Service can have
>> the old synchronous method like so
>>
>> public Response method(Request r); //blocks the platform thread until
>> request is totally processed
>>
>> BUT, can also have a method like so
>>
>> public void method(Request r, CallbackHandler h); //allows service to
>> release a platform thread while request is processed
>
>
> Yes you can do this in the server side as well if you use Axis2.
> Create a MessageReceiver extending from
> AbstractInOutSyncMessageReceiver, then you have your expected behaviour.
> Earlier I thought you wanted the async behaviour in client side.
>
> -- Chinthaka
>
>>
>> Remember, those are service methods, not client methods(Of
>> course,those methods are allowed in clients too). The only thing I
>> need now is some kind of object to soap message converter(and soap
>> message to objects of course too). I have planned on doing the
>> routing myself but maybe axis has something there too?
>>
>> thanks,
>> dean
>>
>>
>
[Axis2] Re: soap stack?
Posted by Eran Chinthaka <ch...@opensource.lk>.
Hi Dean,
Dean Hiller wrote:
> Does axis have a reusable soap stack in it somewhere? I have built a
> pojo framework(kind of like spring, except superfast as it is not on
> J2EE). I wanted to embed some soap stack somehow though, as this
> framework allows asynchonous methods on services(ie. not just the
> client but services too). What I mean by this is a Service can have
> the old synchronous method like so
>
> public Response method(Request r); //blocks the platform thread until
> request is totally processed
>
> BUT, can also have a method like so
>
> public void method(Request r, CallbackHandler h); //allows service to
> release a platform thread while request is processed
Yes you can do this in the server side as well if you use Axis2. Create
a MessageReceiver extending from AbstractInOutSyncMessageReceiver, then
you have your expected behaviour.
Earlier I thought you wanted the async behaviour in client side.
-- Chinthaka
>
> Remember, those are service methods, not client methods(Of
> course,those methods are allowed in clients too). The only thing I
> need now is some kind of object to soap message converter(and soap
> message to objects of course too). I have planned on doing the
> routing myself but maybe axis has something there too?
>
> thanks,
> dean
>
>