The pagination can be done on different ways, it depends on your needs and the data overloading.
1) Use the default functionality offered by rich:datascroller.
2) Extend, for instance, the SerializableDataModel to have control on the pagination.
You can find nice examples with both cases on the rich faces demo page.
If you want to manage the pagination yourself and have control on the data loaded, I suggest going for the option 2.
Where can I exactly find sample for the 2nd version on the richfaces demo page?
Have a look on the AuctionDataModel.java Source on:
I started with those examples and it was very helpful!
also you will find there second example on using modifiable model. It shows addition of the filtering and sorting functionality to your model.
But, I did not make it really reusable with Seam (without entityquery)
You can use any 3rd-party framework to build HQL statements dynamically.
Can you attach an example?
Sorry, but I don't have example right now.