Как реализовать периодическое обновление страницы при сбое - PullRequest
1 голос
/ 08 декабря 2010

Я пытаюсь улучшить отказоустойчивость на странице JSP, которая периодически обновляется.Время ожидания используется для отслеживания того, когда пришло время отправить страницу.

Проблема заключается в том, что общение регулярно прерывается, что приводит к тому, что страница не работает, и она не обновляется, когда связь установлена ​​иработает снова.

Код ниже является текущей реализацией.

function startTimer(buttonid) {
    var startstring = 'myTimer("' + buttonid + '")';
    window.setTimeout(startstring,15000);
}

function myTimer(buttonid) {
   window.document.forms[0].submit();   
}

startTimer () вызывается в событии onload страницы.

<body onload="startTimer('blurp');

Лучшим решением является страница, которая изящно ухудшается при прекращении связи.В этом случае он выдает сообщение об ошибке и пытается обновить после установленного периода снова.

Я рассматривал PeriodicalUpdater в Prototype как способ решения этой проблемы.

1 Ответ

1 голос
/ 09 декабря 2010

Как насчет использования поддельного div для хранения результата запроса ajax, когда вы получаете ответ, затем обновляете реальный div, когда вы получаете сообщение об ошибке связи, которое ничего не делает или сигнализирует клиенту, что данные в этом divустарел

new Ajax.PeriodicalUpdater($('fakeUpdateDiv'),
                   url, {
                     frequency : 30,
                     method : 'get',
                     parameters : {
                    },
                onSuccess : function(transport) {
                  $('realUpdateDiv').update(transport.responseText);
                },
                onFailure : function(transport) {
                              //do something
                }
            });

PS : для fakeUpdateDiv установлено значение display:none

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...