为jax rs Client设置超时

我想为jax rs客户端设置连接超时。

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

当我使用ClientConfig直接创建客户端时,我收到以下消息:

无法找到内容类型application / xml的MessageBodyReader并输入类..

多数民众赞成我尝试过的。 但它不会工作,如果我尝试连接到错误的主机,它需要20秒,直到我得到ProcessingException。 我也尝试在webTarget上设置属性,它也没有帮助。

 WebTarget target = client.target(protocol + "://" + host + ":" + port); target = target.path(APPLICATION_PATH + REST_PATH); target.property(ClientProperties.CONNECT_TIMEOUT, 1); target.property(ClientProperties.READ_TIMEOUT, 1);