SocketTimeoutException:读取超时,如何解决?

时间:2012-01-25 12:24:31

标签: java swing sockets exception

我有一个使用以下命令读取HTML页面的swing应用程序

String urlzip = null;
try {
        Document doc = Jsoup.connect(url).get();
        Elements links = doc.select("a[href]");
        for (Element link : links) {
            if (link.attr("abs:href").contains("BcfiHtm.zip")) {
                urlzip = link.attr("abs:href").toString();
            }
        }
    } catch (IOException e) {
        textAreaStatus.append("Failed to get new file from internet:"+e.getMessage()+"\n");
        e.printStackTrace();
    }
return urlzip;

然后我的swing应用程序将返回一个字符串,它工作正常,它会读取我给它的任何HTML页面。但是,有时应用程序给了我以下错误类型异常报告。我怎样才能增加时间?

2 个答案:

答案 0 :(得分:5)

this page上有一个例子。

Jsoup.connect("http://example.com").timeout(3000)

答案 1 :(得分:2)

当您尝试读取数据时会发生此错误,并且由于大数据或连接问题,它无法完成任务。我建议你使用上面的代码增加你的超时至少1分钟。所以它就像下面的代码一样,

Jsoup.connect("http://example.com").timeout(60000);