As we all know a ReST web service cannot hold state - this is a problem for me now when I am considering large database transactions and I wonder if you can help.
My ReST web service has one major role - to do CRUD operations against a database. Problem is if I have to query a table with thousands of rows and send that back to the client as XML - this is not good. It's highly inefficient to keep requesting for thousands of records BUT you cannot do partial transactions (i.e. using ROWNUM keyword in Oracle) with a REST web service. So how do you get round this?
One possible way to get records from a table 100 at a time would be:
http://mywebservice/employees/0/100
I hold state for the last request submitted i.e 100
the next request would be:
http://mywebservice/employees/101/200
and so on. But is this strictly restful?