首页 > 解决方案 > 如果传递了无效的大小或页面,默认分页不会引发异常

问题描述

当将无效的大小或页面传递给后端时,Spring 使用其默认的 Pageable 对象(page = 0,size = 20)而不是抛出异常。有没有办法覆盖这种行为?我需要它来抛出稍后将由我的异常处理程序处理的异常,因此用户将看到 400 - BadRequest。

我尝试通过将 fallBackPageable 设置为自定义 Pageable 来配置 PageableHandlerMethodArgumentResolver。但它没有成功。我可以将一个默认的 Pageable 更改为另一个(具有不同的页面和大小值),但我不能让它抛出异常。

@GetMapping("all")
    public ResponseEntity<PageableDto> getAllUsers(@ApiIgnore Pageable pageable) {
        return ResponseEntity.status(HttpStatus.OK).body(userService.findByPage(pageable));
    }

标签: spring-restpageable

解决方案


推荐阅读