Решение состоит в том, чтобы принудительно привести приведенный объект Pageable к CassandraPageRequest, а затем использовать .getPagingState для получения требуемого объекта.После сериализации можно создать PagingState обратно из строки и добавить размер страницы для создания PageRequest.Вроде сложно и недокументировано, но работает.Не забудьте проверить, существует ли следующая страница и является ли Pageable действительно CassandraPageRequest.Пример кода ниже:
// Serialize pageabele
if (isNull(pageable) || pageable.isUnpaged() || !(pageable instanceof
CassandraPageRequest)) {
return null;
}
final CassandraPageRequest cassandraPageRequest = ((CassandraPageRequest)
pageable);
if (isNull(cassandraPageRequest.getPagingState())) {
return null;
}
return cassandraPageRequest.getPagingState().toString();
// Create request from serialized object
CassandraPageRequest.of(PageRequest.of(0, pageSize),
PagingState.fromString(serializedPagingState));
Вот также проблема SpringData Jira.https://jira.spring.io/browse/DATACASS-565#add-comment