#grid #dataprovider #vaadin14
Вопрос:
почему вызов query.getLimit() получает значение Integer.Max ?
недействительные операции выборки:
public void onSearchClicked() {
Grid<Operation> operationGrid = new Grid<>();
operationGrid.setWidth("99%");
operationGrid.setPageSize(100);
CallbackDataProvider<Operation, Void> dataProvider =
DataProvider.fromCallbacks(query -> {
try {
operationService.fetchOperations( // somedata
query.getOffset(),
query.getLimit()).stream();
} catch (Exception e) {
}
return Stream.empty();
},
query -> {
try {
Integer countOperations = getCountOperations();
return Optional.ofNullable(countOperations).orElse(0);
} catch (Exception e) {
}
return 0;
});
grid.setDataProvider(dataProvider);
}
запрос первого вызова.setLimit() получает целое число.Макс, но в следующий раз вызовите query.setLimit (), чтобы получить значение = сетка операций.getPageSize.