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 william wallace <wi...@yahoo.com> on 2007/11/06 03:32:49 UTC

[Axis2] Architecture: Asynchronous Web services with Axis1 and Axis2 -

Hi,

So far, we have used Axis1 to create a number of Web services in my project. We see it works well with the request-response message pattern. Only one issue is that we could not have Asynchronous Web services. Instead, we have had to use Socket programming for those asynchronous in nature. (the client maintains a server Socket, after responding, the Web service  has to initialize a client socket connecting to the client side program,...). The key shortcoming of this approach is that the socket connection must be maintained for a time even no data transfer in the case of event notification (the Web service informs back to the client side about an event happened).

Now I just switch to Axis2 and find that it supports the Non-blocking invocation and I can use it for those Asynchronous Web services.  The first thing I notice is, in Axis2, there is no difference in client (consumer) and Web service side. 

I would like to know how the Call Back mechanism has been implemented. 

- if HTTP is the transport, is there an http server in the client side opening to wait for the call-back message from Web service ? if not, what is really happening ?

- if TCP is the transport, can I say that a server Socket is opened in the client side ? any long-running  connection between the client and Web services ?


Anyone has knowledge in this issue, please advise me. I do appreciate it.

Thanks in advance

 __________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 

Re: [Axis2] Architecture: Asynchronous Web services with Axis1 and Axis2 -

Posted by Suran Jayathilaka <su...@wso2.com>.
william wallace wrote:
> Hi,
>
> So far, we have used Axis1 to create a number of Web services in my 
> project. We see it works well with the request-response message 
> pattern. Only one issue is that we could not have Asynchronous Web 
> services. Instead, we have had to use Socket programming for those 
> asynchronous in nature. (the client maintains a server Socket, after 
> responding, the Web service has to initialize a client socket 
> connecting to the client side program,...). The key shortcoming of 
> this approach is that the socket connection must be maintained for a 
> time even no data transfer in the case of event notification (the Web 
> service informs back to the client side about an event happened).
>
> Now I just switch to Axis2 and find that it supports the Non-blocking 
> invocation and I can use it for those Asynchronous Web services. The 
> first thing I notice is, in Axis2, there is no difference in client 
> (consumer) and Web service side.
>
> I would like to know how the Call Back mechanism has been implemented.
>
> - if HTTP is the transport, is there an http server in the client side 
> opening to wait for the call-back message from Web service ? if not, 
> what is really happening ?
>
> - if TCP is the transport, can I say that a server Socket is opened in 
> the client side ? any long-running  connection between the client and 
> Web services ?
>
>
> Anyone has knowledge in this issue, please advise me. I do appreciate it.
>
> Thanks in advance
>
> __________________________________________________
> Do You Yahoo!?
> Tired of spam? Yahoo! Mail has the best spam protection around
> http://mail.yahoo.com
>
Hi William,

I believe this podcast/article should tell you a bit about asynchronous 
web services invocations in Axis2.

http://wso2.org/library/2774

Cheers!
Suran

---------------------------------------------------------------------
To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-user-help@ws.apache.org