URLConnection
лениво выполняется. Таким образом, он не будет на самом деле запускать HTTP-запрос, пока вы не получите некоторую информацию об HTTP-ответе. Э.Г.
int responseCode = httpUrlConnection.getResponseCode();
или
InputStream responseBody = urlConnection.getInputStream();
или
String statusHeader = urlConnection.getHeaderField(null);
connection.connect();
, кстати, совершенно лишний. Он уже выполнен в тот момент, когда вы позвонили url.openConnection();
. Кроме того, connection.setRequestMethod("POST");
совершенно лишнее, connection.setDoOutput(true)
уже делает это.
Тем не менее, если цель на самом деле находится в том же контексте веб-приложения, размещенном на той же машине, то есть намного лучших способов вызвать ее, чем создание к ней HTTP-соединения, например пересылка перенаправление запроса.