Spring @RepositoryRestController 导致@PageableDefault 停止工作
Spring @RepositoryRestController causes @PageableDefault to stop working
我有一个使用@PageableDefault 注释的自定义控制器。我在我的 class 上使用了 @Controller 注释,但是,我想让这个控制器响应 HATEOAS 响应。我添加了 @RepositoryRestController 将我的方法更改为
public HttpEntity<PagedResources<Resource<Books>>> search(@RequestParam(value = "q", required = false) String query, @PageableDefault(page = 0, size = 20) Pageable pageable)
然后 return 到
return new ResponseEntity<PagedResources<Resource<Books>>>(booksAssembler.toResource(queryResult), HttpStatus.OK);
现在我的@PageableDefault 不起作用了。但是,当客户端发出请求时(例如,显式添加(或不添加)&page=0&size=20 到 URL)来自控制器的端点时,可分页始终为空。我不明白为什么它在更改注释后停止工作?除了改回 @Controller 之外,还有什么办法可以修复它吗?
我找到了解决方案。
我 运行 遇到了这个错误。 https://jira.spring.io/browse/DATAREST-906
我用的是Spring Boot 1.4.1,升级到1.4.2解决了问题。
我有一个使用@PageableDefault 注释的自定义控制器。我在我的 class 上使用了 @Controller 注释,但是,我想让这个控制器响应 HATEOAS 响应。我添加了 @RepositoryRestController 将我的方法更改为
public HttpEntity<PagedResources<Resource<Books>>> search(@RequestParam(value = "q", required = false) String query, @PageableDefault(page = 0, size = 20) Pageable pageable)
然后 return 到
return new ResponseEntity<PagedResources<Resource<Books>>>(booksAssembler.toResource(queryResult), HttpStatus.OK);
现在我的@PageableDefault 不起作用了。但是,当客户端发出请求时(例如,显式添加(或不添加)&page=0&size=20 到 URL)来自控制器的端点时,可分页始终为空。我不明白为什么它在更改注释后停止工作?除了改回 @Controller 之外,还有什么办法可以修复它吗?
我找到了解决方案。
我 运行 遇到了这个错误。 https://jira.spring.io/browse/DATAREST-906
我用的是Spring Boot 1.4.1,升级到1.4.2解决了问题。