Is it possible to control which records come from the database as the user scrolls down the datatable. Like scrolling a certain distance would be the equivalent to going to the second page and so on? This could be another approach as well. If I could somehow manually convert the distance to a page and let my stored procedure take over from there it could help as well? Also, if I extend ScrollableTableDataModel and use this bean in the page would this eliminate me from using this same bean on the same page in a KeepAlive scenario?