0

有一个问题一直困扰着我一段时间。我正在使用 icefaces 生成带有搜索字段的模式弹出窗口。单击搜索会启动特定网站的屏幕抓取工具。

我的问题是这个。如果你输入一些非常通用的术语,显然刮板需要更长的时间才能完成,这会导致超时。超时会导致模式弹出窗口冻结并且无法关闭。

如果发生超时,如何优雅地关闭弹出窗口并导航到另一个页面?

4

1 回答 1

1

您可以创建一个线程,启动它并使其休眠会话最大超时间隔的时间量。

然后,您可以在线程恢复后重定向到另一个资源,如下所示:

@Thread 的运行方法

//...
    try {
            Thread.currentThread().sleep(TIMEOUT_INTERVAL);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }

        URL url = new URL("REDIRECT_PAGE");
        url.openConnection();

//...

但是,如果您的搜索过程在超时间隔之前完成,您可以终止线程。

于 2010-08-09T16:55:12.267 回答