Вы должны использовать IAuthorizationStrategy
для защиты своих страниц. См., Например, wicket-auth-role для упрощенной библиотеки на основе ролей.
Когда Wicket пытается отобразить страницу, которая сопоставлена с URL-адресом закладки пользователя, он заметит, что пользователь еще не вошел в систему (поскольку в сеансе нет назначенного ему пользователя), сохраните текущий запрошенный URL-адрес, перенаправьте на страницу входа и дождитесь, пока пользователь правильно войдет в систему. В onSubmit вашей формы входа в систему вы затем позвоните
if(!continueToOriginalDestination()) {
setResponsePage(SomeReasonableDefaultPageLikeYourHomePage.class);
}
См. Пример «Аутентификация» в проекте Wicket examples ( онлайн-демонстрация здесь )
continueToOriginalDestination
даст Wicket команду отобразить исходный URL-адрес, запрошенный пользователем, если он сохранен, и в противном случае вернет false
.