I was wondering what others are doing to avoid the build up of large amounts of session data. For example , I have search page that returns lists and I keep the list in my session so can page through the data. When the the person leaves the page and goes to another search page this list is still in my session . Other than keeping everything in request scope , is there some way that I can remove the session data when a user leaves the search page ? I know that I can remove the attribute from the session but just wondering if there is some sort of strategy as to know when to take it out of the session since the user can navigate almost anywhere after performing a search. I am doing something similar to JPetstore example with PageListHolder .. but there are alot of search pages and the results are rather large and seem to accumulate.