Вопрос
У меня есть страница по имени BranchMap, которая использует GoogleMap, чтобы показать пользователю какое-то здание после того, как он вошел в систему.данные сначала были в защищенной (требуется пароль) ситуации (в CategoiresXML, который расширяет ProtectedPage), но я обнаружил, что Google не может войти в систему и расширить страницу из WebPage.Но теперь, когда я перехожу на страницу BranchMap и нажимаю CTRL + F5, срок действия страницы истекает, и я ссылаюсь на HomePage.Кто-нибудь знает причину?если вам нужна дополнительная информация, скажите мне, чтобы я их разместил.
Решение
Не совсем уверен, что вы описываете - это не совсем понятно, но посмотрите, поможет ли это:
Это может произойти, когда какой-либо вызов Ajax приводит к изменению страницы, но обновление страницы (которая не добавлена в закладки), URL-адреса которой ссылаются на просроченную версию, вызывает это исключение.У меня возникла эта проблема в какой-то момент, когда у нас было несколько iframe, вызывающих наше приложение калитки (извините за нечеткое объяснение - это было некоторое время назад).
В конце концов, для нашего приложения нам пришлось разделить разные источники iframe на разные сервлеты в web.xml — чтобы полностью изолировать сеансы разных страниц — но это уже другая история.
Попробуйте добавить это в метод инициализации приложения калитки.
// debug code for fixing session issue (multiple ajax using pages inside
// one browser)
get().getPageSettings().setAutomaticMultiWindowSupport(true);
И ознакомьтесь с документацией здесь: http://wicket.apache.org/docs/1.4/org/apache/wicket/jmx/PageSettings.html#getAutomaticMultiWindowSupport()
Можете ли вы показать трассировку стека?
Какую версию Wicket вы используете?
В javadoc до версии 1.4-rc3 также была небольшая ошибка, исправленная здесь:http://svn.apache.org/viewvc/wicket/trunk/wicket/src/main/java/org/apache/wicket/settings/IPageSettings.java?r1=647167&r2=768578&pathrev=768578&diff_format=h
Проблема здесь: https://issues.apache.org/jira/browse/WICKET-2233
Вот обновленный комментарий в javadoc от IPageSettings:
/**
* Gets whether Wicket should try to support opening multiple windows for the same session
* transparently. If this is true - the default setting -, Wicket tries to detect whether a new
* window was opened by a user (e.g. in Internet Explorer by pressing ctrl+n or ctrl+click on a
* link), and if it detects that, it creates a new page map for that window on the fly. As a
* page map represents the 'history' of one window, each window will then have their own
* history. If two windows would share the same page map, the non-bookmarkable links on one
* window could refer to stale state after working a while in the other window.
* <p>
* <strong> Currently, Wicket trying to do this is a best effort that is not completely fail
* safe. When the client does not support cookies, support gets tricky and incomplete. See
* {@link WebPage}'s internals for the implementation. </strong>
* </p>
*
* @return Whether Wicket should try to support multiple windows transparently
*/
boolean getAutomaticMultiWindowSupport();