apachehttpclientを使用してインターネットからテキストファイルを取得しようとしています。私は次のコードを使用しています:
HttpClient httpclient = new DefaultHttpClient();
HttpGet getHNMR = new HttpGet("http://www.hmdb.ca/labm/metabolites/" + HMDB + "/chemical/pred_hnmr_peaklist/" + HMDB + "_peaks.txt");
HttpGet getCNMR = new HttpGet("http://www.hmdb.ca/labm/metabolites/" + HMDB + "/chemical/pred_cnmr_peaklist/" + HMDB + "_peaks.txt");
try {
responseH = httpclient.execute(getHNMR);
responseC = httpclient.execute(getCNMR);
} catch (ClientProtocolException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
System.out.println("client exception");
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
System.out.println("ioexception");
}
//Generate HNMR peak list
HttpEntity entityH = responseH.getEntity();
HttpEntity entityC = responseH.getEntity();;
try {
HNMR = EntityUtils.toString(entityH);
CNMR = EntityUtils.toString(entityC);
} catch (ParseException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
System.out.println("parseexception");
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
System.out.println("ioexception");
}
//Set peak lists to textarea
HC.setText(CNMR + "\n" + HNMR);
次のスタックトレースを取得しています。
Thread [pool-2-thread-1] (Suspended (exception IllegalStateException))
ThreadPoolExecutor.runWorker(ThreadPoolExecutor$Worker) line: 1128
ThreadPoolExecutor$Worker.run() line: 603
Thread.run() line: 679
私はデバッグにあまり詳しくないので、正確に何が起こっているのかわかりません。