有人可以解释为什么使用此client.setReadTimeOut和client.setConnectTimeOut超时?我和我的泽西客户使用相同的。我已经为连接和读取设置了5秒的超时。为了测试目的,我已经在我的服务中使用了一个线程睡眠6秒。我收到超时异常,但之后我的服务恢复并正常响应。我的要求是设置服务响应的超时,如果它被传递,它应该出来再试一次。此外,我需要设置客户端应尝试连接的尝试次数。请建议
答案 0 :(得分:0)
您的客户端在5秒钟后没有收到服务器的回复时间超时并按设计引发超时异常。它不知道服务器是否开始处理呼叫或稍后将进行处理。
当服务器从睡眠中醒来时,它也不知道客户端超时。您可以检查连接的状态,但它不是非常可靠。
您的客户端可能会捕获超时异常,并根据需要多次重试该呼叫。如果您关心的是同一个服务器调用被执行多次,那么您必须实现资源方法是幂等的。