проблема тайм-аута всплывающих окон модального лица icefaces - PullRequest
0 голосов
/ 25 мая 2010

У меня есть вопрос, касающийся чего-то, что вызывало у меня проблемы в течение некоторого времени. Я использую Icefaces для создания модального всплывающего окна с полями поиска. При нажатии кнопки поиска запускается экранный скребок для определенного веб-сайта.

Моя проблема заключается в следующем. Если вы введете довольно общие термины, очевидно, что скребку потребуется больше времени для завершения, что приводит к тайм-ауту. Тайм-аут приводит к зависанию модального всплывающего окна и его нельзя закрыть.

Как можно изящно закрыть всплывающее окно и перейти на другую страницу, если истекло время ожидания?

1 Ответ

1 голос
/ 09 августа 2010

Вы можете создать поток, запустить его и перевести в спящий режим - это максимальное время ожидания сеанса.

Затем вы можете перенаправить на другой ресурс после возобновления потока следующим образом:

@ Метод запуска потока

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

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

//...

Но если ваш процесс поиска завершится до истечения времени ожидания, вы можете уничтожить поток.

...