cxf-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Pallinger P├ęter <pallin...@dsd.sztaki.hu>
Subject Re: java.net.SocketTimeoutException: Read timed out for one-way webservice
Date Fri, 15 Jan 2010 09:50:46 GMT
On Thu, 14 Jan 2010 10:17:49 -0500
Daniel Kulp <dkulp@apache.org> wrote:
> My bad.   @Oneway.
OK, then my side is probably OK. :)

> > It does not answer anything, I can see that with tcpdump. Is there a
> > workaround for that, or there is nothing to do to handle .NET's
> > misbehaviour?
> That would definitely be a bug on the .NET side.   :-(
Since then I've got a tip from a .NET guy that I should simply catch
that time-out exception (maybe even lower the time-out interval
temporarily), and pretend that everything is OK.

It would seem that this is a 'feature' of the .NET WS stack to speed up
operation (of course only for MS clients by breaking standards; this is
actually not surprising really :( ).

> Hmm......   Hmmm......  I'm not really sure.   :-(
> 
> The only thing I can think to do is to write an interceptor that
> would live very late in the interceptor chain that would pause the
> current chain and push it onto a background thread where it would
> resume to do the final "send and wait for the response code"
> thing.      You can use the code for the OneWayProcessorInterceptor
> stuff as a starting point as that's pretty much exactly what it does
> with one ways on the server side.   To get the 200 back ASAP, once we
> know the incoming message is for a oneway call, we push the actual
> invoke onto a background thread so the HTTP request thread can return
> immediately and send back the 200.   That's something the .NET server
> is obviously not doing. 
This is pretty similar to what the .NET guy suggested. If I will get
the time, I will implement it and send the resulting code. Simply
catching the exception in the client seems to overload the console/log
quite a bit (as errors are dumped at lower levels), and it is hard to
tell whether it was the expected error or not.

I will come back if I could find the solution, but if anyone does have
a ready-made solution for communicating with one-way .NET services, you
are welcome to write to me.


	PP

Mime
View raw message