У меня есть цикл по нескольким URL-адресам, для каждого из которых я делаю следующее:
private String doQuery(String url) {
HttpGet httpGet = new HttpGet(url);
setDefaultHeaders(httpGet); // static method
HttpResponse response = httpClient.execute(httpGet); // httpClient instantiated in constructor
int rc = response.getStatusLine().getStatusCode();
if (rc != 200) {
// some stuff...
return;
}
HttpEntity entity = response.getEntity();
if (entity == null) {
// some stuff...
return;
}
// process the entity, get input stream etc
}
Первый запрос в порядке, второй вызывает это исключение:
Исключение в поток "основной" частный String doQuery (String url) {HttpGet httpGet = new HttpGet (url); setDefaultHeaders (httpGet); // статический метод ...
У меня есть цикл по нескольким URL-адресам, для каждого из которых я делаю следующее:
private String doQuery(String url) { HttpGet httpGet = new HttpGet(url); setDefaultHeaders(httpGet); // static method HttpResponse response = httpClient.execute(httpGet); // httpClient instantiated in constructor int rc = response.getStatusLine().getStatusCode(); if (rc != 200) { // some stuff... return; } HttpEntity entity = response.getEntity(); if (entity == null) { // some stuff... return; } // process the entity, get input stream etc }
Первый запрос в порядке, второй вызывает это исключение:
Исключение в поток "основной" частный String doQuery (String url) {HttpGet httpGet = new HttpGet (url); setDefaultHeaders (httpGet); // статический метод ...
У меня есть цикл по кучке URL-адресов, для каждого из которых я делаю следующее:
private String doQuery(String url) { HttpGet httpGet = new HttpGet(url); setDefaultHeaders(httpGet); // static method HttpResponse response = httpClient.execute(httpGet); // httpClient instantiated in constructor int rc = response.getStatusLine().getStatusCode(); if (rc != 200) { // some stuff... return; } HttpEntity entity = response.getEntity(); if (entity == null) { // some stuff... return; } // process the entity, get input stream etc }
Первый запрос в порядке, второй вызывает это исключение:
Исключение в поток "основной" java.lang.IllegalStateException: Недействительное использование SingleClientConnManager: соединение все еще выделяется. Обязательно отпустите соединение перед выделением другой. в org.apache.http.impl.conn.SingleClientConnManager.getConnection (SingleClientConnManager.java:199) в org.apache.http.impl.conn.SingleClientConnManager $ 1.getConnection (SingleClientConnManager.java:173) ......
Это простое однопоточное приложение. Как я могу отключить это соединение?