设置超时以在java实现类中使用Web服务

时间:2014-06-18 18:13:09

标签: java web-services

我有一个JAX-WS Web服务客户端。我试图像这样设置超时属性:

Map<String, Object> requestContext = bp.getRequestContext();
requestContext.put(BindingProviderProperties.REQUEST_TIMEOUT, 20);
//I also tried using 
//"javax.xml.ws.client.receiveTimeout" in the place of REQUEST_TIMEOUT 
//It behaved the same way.
requestContext.put(BindingProviderProperties.CONNECT_TIMEOUT, 10000); 

有关详细信息,请参阅问题How do I set the timeout for a JAX-WS webservice client?

但是,我没有看到超时发生。它应该给出读取超时,因为我们触发的服务不会在20毫秒内提供响应。我们还尝试将REQUEST_TIMEOUT值设为负值,但它给出了相同的响应。从此我确认请求上下文中设置的值没有指定服务的超时。

有谁知道为什么这个设置不起作用以及我应该做什么呢?

1 个答案:

答案 0 :(得分:0)

可以通过添加&#34; responseTimeout&#34;来增加超时值。服务URL的参数。 例如:http://localhost.int.com/service/TestQuery.svc?responseTimeout=10000