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

Java 是否可以覆盖特定web服务方法中的默认请求超时?,java,timeout,jax-ws,request-timed-out,Java,Timeout,Jax Ws,Request Timed Out,在我的web服务客户端(JAX-WSRI2.2.9-b14002)中,我设置了非常低的连接和请求超时,但对于某些方法,我希望以默认超时不变的方式覆盖它们。 换言之,我想在用户调用特定方法时设置更高的请求超时,保留所有其他方法的默认超时 提前感谢,再见,您可以先创建ClientConfig,然后在创建新客户端时将其作为参数提供 ClientConfig configuration = new ClientConfig(); configuration.property(ClientProperti

在我的web服务客户端(JAX-WSRI2.2.9-b14002)中,我设置了非常低的连接和请求超时,但对于某些方法,我希望以默认超时不变的方式覆盖它们。 换言之,我想在用户调用特定方法时设置更高的请求超时,保留所有其他方法的默认超时


提前感谢,再见,您可以先创建ClientConfig,然后在创建新客户端时将其作为参数提供

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

我相信,通过使用请求上下文可以做到这一点

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

为什么我要在调用另一个方法之前重新创建客户端,这毫无意义。谢谢,但这不是我想要的答案:(谢谢,但我从来没有问过:)此外,BindingProviderProperties来自com.sun.xml.internal.ws.client。使用内部包会产生编译错误。请对此进行检查,这样可以设置全局超时,然后设置每个请求超时