Как вернуть объект pageableResponseInfo из класса DomainArgumentResolver в класс контроллера? Я привел все классы ниже.
Вот объект PageableResponseInfo. Я хочу получить значение invalidSortParam в классе контроллера.
public class PageableResponseInfo {
private String invalidSortParam;
public PageableResponseInfo(String invalidSortParam){
this.invalidSortParam = invalidSortParam;
}
public String getInvalidSortParam() {
return this.invalidSortParam;
}
}
Класс компонента: этот класс выполняет некоторые бизнес-логики c и заполняет объект PageableInfo.
@Component
@ConfigurationProperties
public class DomainArgumentResolver extends SortHandlerMethodArgumentResolver {
PageableResponseInfo pageableResponseInfo;
@Override
public Sort resolveArgument() {
pageableResponseInfo = new PageableResponseInfo();
// ...
if (orders.size() <= paramSize) {
pageableResponseInfo.setInvalidSortParam(order.getProperty() + " is not a valid sort parameter");
}
// ...
return sort;
}
}
Контроллер class Ниже приведен класс контроллера, в котором я хочу получить объект PageableResponseInfo через класс DomainArgumentResolver.
@RestController
public class JsonDbController {
@Autowired
private DomainArgumentResolver domainArgumentResolver;
@GetMapping("/all")
public ResponseEntity<ApiResponse> getAllBooks(Pageable pageable) {
List<Book> bookList;
ApiResponse response;
try {
if (domainArgumentResolver != null) {
response = ApiResponse.ofFailure("ji");
} else {
bookList = bookService.findAllBooks(pageable);
response = ApiResponse.ofSuccess(bookList, "All books fetched successfully");
}
}
catch (InvalidSortException e) {
response = ApiResponse.fromException(e);
logger.error("Failed . Cause: {}", e);
}
catch (Exception e) {
response = ApiResponse.ofFailure("Failed to fetch books. Please try again");
logger.error("Failed to fetch all books. Cause: {}", e);
}
return new ResponseEntity<>(response, org.springframework.http.HttpStatus.valueOf(response.getCode()));
}
}
Сообщите мне, требуется ли какая-либо другая информация.