是否可以覆盖特定Web服务方法中的默认请求超时?

时间:2017-05-29 09:02:14

标签: java timeout jax-ws request-timed-out

在我的Web服务客户端(JAX-WS RI 2.2.9-b14002)中,我设置了很低的连接和请求超时,但对于某些方法,我想以默认超时不会覆盖的方式覆盖它们更改。 用不同的话来说,我想在用户调用特定方法时设置更高的请求超时,保留所有其他方法的默认超时。

提前致谢,再见

2 个答案:

答案 0 :(得分:0)

您可以先创建ClientConfig并在创建新客户端时将其作为参数提供。

ClientConfig configuration = new ClientConfig();
configuration.property(ClientProperties.CONNECT_TIMEOUT, 1000);
configuration.property(ClientProperties.READ_TIMEOUT, 1000);
Client client = ClientBuilder.newClient(configuration);

答案 1 :(得分:0)

你可以使用我相信的请求上下文来做到这一点

requestContext.put(BindingProviderProperties.REQUEST_TIMEOUT, REQUEST_TIMEOUT);
requestContext.put(BindingProviderProperties.CONNECT_TIMEOUT, CONNECT_TIMEOUT);