Xfire生成webservice客户端,设置连接超时

在调用任何webservice时,都会遇到无法获取服务的情况,我们知道在基于http的网络连接中超时设置如下:

 

 URL url = new URL("http://www.163.com"); HttpURLConnection httpConnection = (HttpURLConnection) url.openConnection(); httpConnection.setConnectTimeout(20000);

 

在xfire生成webservice客户端如何设置超时呢?

看下面的代码

//创建Service对象 MyServiceClient MyClient = new MyServiceClient(); MyService MyService = MyClient.getMyServicePort(); //设置连接参数 HttpClientParams params = new HttpClientParams(); params.setParameter(HttpClientParams.USE_EXPECT_CONTINUE, Boolean.FALSE); params.setParameter(HttpClientParams.CONNECTION_MANAGER_TIMEOUT, setting.getTimeout() * 1000);//单位是毫秒 Client client = Client.getInstance(MyService); client.setProperty(CommonsHttpMessageSender.HTTP_CLIENT_PARAMS, params);

XFire是基于ApacheHttpClient,所以实际上连接超时的参数是就是设置在HttpClient上的。

你可能感兴趣的:(apache,webservice,网络,manager,service,url)