From a440b1f88135c8a6d6cf1914502805b5ce9e0eaf Mon Sep 17 00:00:00 2001 From: DmitriyMX Date: Fri, 15 Dec 2017 16:46:40 +0300 Subject: [PATCH] =?UTF-8?q?Issue=20#21:=20stacktrace=20=D0=BF=D1=80=D0=B8?= =?UTF-8?q?=20connection=20time=20out=20=D0=B7=D0=B0=D0=BC=D0=B5=D0=BD?= =?UTF-8?q?=D0=B5=D0=BD=20=D0=BD=D0=B0=20=D0=B1=D0=BE=D0=BB=D0=B5=D0=B5=20?= =?UTF-8?q?=D0=BF=D1=80=D0=BE=D1=81=D1=82=D1=83=D1=8E=20=D1=84=D0=BE=D1=80?= =?UTF-8?q?=D0=BC=D1=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../kinosearch/webapp/WebAppController.java | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/src/main/java/kinosearch/webapp/WebAppController.java b/src/main/java/kinosearch/webapp/WebAppController.java index d5c2395..8b71849 100644 --- a/src/main/java/kinosearch/webapp/WebAppController.java +++ b/src/main/java/kinosearch/webapp/WebAppController.java @@ -170,7 +170,24 @@ public class WebAppController { con.setRequestProperty(headerName, request.getHeader(headerName)); } - con.connect(); + boolean connected; + int _try = 0; + do { + try { + con.connect(); + connected = true; + } catch (IOException e) { + con.disconnect(); + connected = false; + _try++; + logger.log(Level.WARNING,String.format("Error connection to '%s': '%s'. Try again...", url.toString(), e.getMessage())); + } + } while (!connected && _try < 3); + + if (!connected) { + response.sendError(524); + return; + } int statusCode = con.getResponseCode(); response.setStatus(statusCode);