Is the Exception you are getting a "Connection Refused" or "Connection Timed 
Out"?   If the server isn't running, it's probably the first and the timeout 
will have nothing to do with that. 

You can test it with a straight HttpURLConnection.  Set the timeouts, and see 
what exception is raised and such.

Dan



On Thu June 18 2009 5:50:46 pm Kevin Priebe wrote:
> I have now tried this with Java 6u13, 6u14, and an older 6u5 with the same
> results.  The connection timeout and max retransmits are ignored even after
> setting auto redirect = true.
>
> Is no one else having problems with this?  Can anyone reproduce my results?
> Should be pretty easy, just turn off the web server (not your production
> one
>
> :P) and try to make a web service call and print out how long it takes to
>
> time out.  I would at least feel better if I'm not the only one that this
> affects...
>
> Kevin
>
>
> -----Original Message-----
> From: Kevin Priebe [mailto:ke...@realtyserver.com]
> Sent: June-18-09 1:28 PM
> To: users@cxf.apache.org
> Subject: RE: Connection timeout ignored
>
> Thanks for the reply Dan.  I was using Java 6u13.  Today I tried it out
> with the latest 6u14 and it still times out between 2 and 3 seconds no
> matter what I do.
>
> I set httpClientPolicy.setAutoRedirect(true); and
> httpClientPolicy.setMaxRetransmits(5); and watched the connection attempts
> using tcpmon.  It seems to only try 2 times no matter what I set the values
> to...
>
> Somewhere deep in the Internet, I found someone suggesting to do
> System.setProperty( "sun.net.client.defaultConnectTimeout", "5000" );, but
> that also did nothing for me.
>
> Maybe I'll try with an older version of Java and see what happens... Any
> other suggestions would be great as I am quite stuck.
>
> Kevin
>
>
> -----Original Message-----
> From: Daniel Kulp [mailto:dk...@apache.org]
> Sent: June-18-09 12:02 PM
> To: users@cxf.apache.org
> Cc: Kevin Priebe
> Subject: Re: Connection timeout ignored
>
>
> We just set the connectionTimeout setting on the HTTPUrlConnection object.
>
> Thus, if that's not working, that would probably be a JDK bug.  :-(
>
> On the re-transmits....   Looks like there is a bug.   If you add:
>
> httpClientPolicy.setAutoRedirect(true);
>
> then I think it will work.  Basically, for the retransmits, we need to
> buffer
> the message.   Turning on the AutoRedirect turns on the buffering.  We
> should
> also turn it on if the retransmits are > 0.
>
> Dan
>
> On Wed June 17 2009 5:53:30 pm Kevin Priebe wrote:
> > Hi, I am doing some testing with connection time outs with CXF 2.2.2.  I
>
> am
>
> > setting it programmatially using the HTTPClientPolicy (see code below).
>
> It
>
> > seems the timeout is ignored if the web server is offline.  I can set the
> > timeout to any value and it will consistently timeout after about 2
>
> seconds
>
> > (which is very low!).  The timeout does seem to work correctly when I
> > simply put Thread.sleep() in the ping() service method, or maybe that's
> > just the receive timeout working by that point...  I am not using spring
>
> at
>
> > all on the client, no spring jars or anything.  Here is my client code:
> >
> >
> >
> > --------------------------------
> >
> > JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
> >
> > factory.setServiceClass(serviceInterface);
> >
> > factory.setAddress(url);
> >
> >
> >
> > AegisDatabinding binding = new AegisDatabinding();
> >
> > binding.setMtomEnabled(mtom);
> >
> > factory.setDataBinding(binding);
> >
> >
> >
> > MyService service = (MyService)factory.create();
> >
> >
> >
> > Client cl = ClientProxy.getClient(service);
> >
> >
> >
> > HTTPConduit http = (HTTPConduit) cl.getConduit();
> >
> >
> >
> > HTTPClientPolicy httpClientPolicy = new HTTPClientPolicy();
> >
> > httpClientPolicy.setConnectionTimeout(10000);
> >
> > httpClientPolicy.setReceiveTimeout(10000);
> >
> > httpClientPolicy.setAllowChunking(true);
> >
> > httpClientPolicy.setMaxRetransmits(3);
> >
> >
> >
> > http.setClient(httpClientPolicy);
> >
> >
> >
> > service.ping();
> >
> > ---------------------------
> >
> >
> >
> > It also seems like the max retransmits is ignored too.. but I can't
>
> confirm
>
> > that yet.  The connection timeout is a problem because it causes errors
>
> for
>
> > our users when they have a flaky network connection, or if we have to
> > reload the web service for some reason (usually goes offline for 5
> > seconds).  This never used to be a problem for us when we used XFire,
> > because it would retry 3 times and had a decent timeout that was not
> > ignored.  Is there something else I can do to fix this?  It's causing
>
> quite
>
> > a few problems with users since the switch to CXF... Thanks,
> >
> >
> >
> > Kevin

-- 
Daniel Kulp
dk...@apache.org
http://www.dankulp.com/blog

Reply via email to