2008-11-11 3 views
4

Приложение Wicket сериализует и кэширует все страницы для поддержки компонентов состояния, а также для поддержки кнопки «Назад», среди других возможных причин. У меня есть приложение, которое использует setResponsePage для перехода с экрана на экран. За довольно короткий промежуток времени сеанс становится довольно большим, потому что все предыдущие страницы хранятся в сеансе. По большей части мне нужен только сеанс, чтобы содержать текущую страницу по очевидным причинам и, возможно, последние 2 или 3 страницы, чтобы упростить навигацию с помощью кнопки возврата браузера.Wicket, стек страниц и использование памяти

Могу ли я заставить страницу истекать после того, как я отплыл от нее, и я знаю, что я не хочу использовать кнопку «Назад» для этой версии страницы? В более общем плане, какой рекомендуемый способ справиться с ростом сессии в Wicket?

ответ

7

http://apache-wicket.1842946.n4.nabble.com/Wicket-Session-grows-too-big-real-fast-td1875816.html

Если вы используете нагрузки объектов домена на странице, которые в конечном счете, тесно связанные с другими объектами домена, убедитесь, чтобы избежать сериализации для них!

Посмотрите LoadableDetachableModel для упаковки domaing объектов DataView и IDataProvider для отображения списка объектов домена

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

Может быть, когда подклассы WbeRequestCycle в своем классе приложений, вы можете получить контроль над целой жизнью страницы в PageMap ... не пробовали, хотя

+2

Ссылка не работает больше: / – krtek 2012-05-22 09:10:05

1

Для того, чтобы избежать Session задыхаться из-за непрерывную укладку байт-поток из-за сериализации в списании сеанса и памяти, вы можете использовать съемные модели, используя крючки, чтобы организовать собственное хранилище и восстановление в начале каждого цикла запросов, таким образом, у вас есть полный контроль над моделями, содержащими байтовый поток страниц, не требуемых в сеансе или навигации через кнопку «Назад».

Смежные вопросы