我有一个基于struts的应用程序,我在其中调用Restful Web Service。我的实际服务调用如下所示:
RestTemplate restTemplate = new RestTemplate();
ResponseEntity<String> response = restTemplate.exchange(testUrl, httpMethod, entity, String.class);
呼叫通过很好,但我想处理这个场景,如果万一我的服务停止,我想在1分钟内超时,而不是等待这么久。
答案 0 :(得分:1)
您可以使用提供超时处理方法的Spring Rest模板:
对于连接超时:
RestTemplate restTemplate = new RestTemplate();
((SimpleClientHttpRequestFactory)restTemplate.getRequestFactory()).setConnectTimeout(2000);
对于读取超时:
((SimpleClientHttpRequestFactory)restTemplate.getRequestFactory()).setReadTimeout(2000);
有关详细信息,请访问文档页面: https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/http/client/SimpleClientHttpRequestFactory.html