Когда я открываю два веб-приложения Wicket в одном и том же браузере, кажется, что существуют конфликты AJAX, когда я вижу полное обновление страницы вместо частичного обновления. Это верно, даже если приложения находятся на разных серверах и номерах портов.
Я использую только готовый JavaScript, предоставляемый Wicket (tabbedPanel
, onTimerAutoRefresh
).
Возможно, это связано с резервной функцией.
Когда открыто только одно веб-приложение, оно работает без проблем.
У меня нет проблем на сайте примеров, поэтому я думаю, что что-то не так с конфигурацией моего приложения.
wicket-ajax.js
, строка 970:
try {
redirectUrl = t.getResponseHeader('Ajax-Location');
} catch (ignore) { // might happen in older mozilla
}
// the redirect header was set, go to new url
if (typeof(redirectUrl) != "undefined" &&
redirectUrl != null &&
redirectUrl != "") {
//redirect and do a full page refresh (window.location = redirectUrl);
}else{
// do the normal ajax functionality
}
Когда все в порядке, в заголовке нет Ajax-Location. Когда второе веб-приложение загружается в тот же браузер, следующий запрос AJAX первого загруженного веб-приложения получает в заголовке следующую строку:
[Ajax-Location: .]