Сначала я открываю соединение и отправляю некоторые данные на сервер. Далее я получаю ответ.
HttpURLConnection connection = (HttpURLConnection) new URL(url).openConnection();
wr = new OutputStreamWriter(connection.getOutputStream());
wr.write("some text sent to server");
wr.flush();
//read the server answer
rd = new BufferedReader(new InputStreamReader(connection.getInputStream()));
...
Мне нужно снова повторить весь цикл - отправить данные и получить ответ. Проблема в том, что если я использую тот же объект wr , я получаю IOException: поток закрыт . И если я попытаюсь сделать новый объект:
wr = new OutputStreamWriter(connection.getOutputStream());
Я получаю ProtocolException: OutputStream недоступен, поскольку заголовки запроса уже отправлены! . Неважно, если я отсоединяюсь и создаю новое соединение - это все то же самое.
Есть ли способ восстановить соединение?
И я делаю это на Android, но я не совсем уверен, имеет ли это какое-то значение в этой ситуации.