Spring pagination does not work -


controller:

@restcontroller @requestmapping("/api") public class testresource {      @requestmapping(value="/test",         method = requestmethod.get,         produces = mediatype.application_json_value)     public responseentity<list<integer>> test(pageable pageable) {         list<integer> init = new arraylist<>(arrays.aslist(new integer[]{1,2,3,4,5,6,7,8,9,10}));         return responseentity.ok(new pageimpl<>(init, pageable, init.size()).getcontent());     } } 

request /api/test?page=1&size=2 returns entire init list (from 1 10).
logs:

enter: com.test.rest.testresource.test() argument[s] = [page request [number: 1, size 2, sort: null]]

how make work?

as understood, page works repositories only, found solution:

use org.springframework.beans.support.pagedlistholder

public responseentity<list<integer>> getintegers(pageable pageable) {     list<integer> init = new arraylist<>(arrays.aslist(new integer[]{1,2,3,4,5,6,7,8,9,10}));     pagedlistholder<integer> holder = new pagedlistholder<>(init);     holder.setpage(pageable.getpagenumber());     holder.setpagesize(pageable.getpagesize());     return responseentity.ok(holder.getpagelist()); } 

request /api/test?page=1&size=2 returns [3,4]


Comments