当前位置: 首页 > 知识库问答 >
问题:

使用Spring Data ElasticSearch 3.0.0的分页错误。使用ElasticSearch 5.4.0的build-Snapshot

牧熙云
2023-03-14

我试图使用当前的spring-boot-starter-data-elasticsearch 2.0.0.build-snapshot(使用spring-data-elasticsearch 3.0.0.build-snapshot)从elasticsearch 5.4.0中检索可分页的信息,但它没有像预期的那样工作。

Page<Customer> page = this.repository.findByLastName("Smith", PageRequest.of(0, 1));

System.out.println("page = " + page);
System.out.println("page.getSize() = " + page.getSize());
System.out.println("page.getTotalPages() = " + page.getTotalPages());
System.out.println("page.getTotalElements() = " + page.getTotalElements());
System.out.println("page.getNumber() = " + page.getNumber());
System.out.println("page.getNumberOfElements() = " + page.getNumberOfElements());
System.out.println("page.nextPageable().isUnpaged() = " + page.nextPageable().isUnpaged());
System.out.println("page.getContent() = " + page.getContent());

代码返回:

page = Page 1 of 1 containing sample.data.elasticsearch.Customer instances
page.getSize() = 0
page.getTotalPages() = 1
page.getTotalElements() = 4
page.getNumber() = 0
page.getNumberOfElements() = 1
page.nextPageable().isUnpaged() = true
page.getContent() = [Customer[id=AV304Kn3zw7_0HN9017l, firstName='Alice', lastName='Smith']]

即使有4个总元素,也只有一页,大小为0。我用spring-data-elasticsearch和elastic-search 1.x和2.x的较老的稳定版本尝试过,效果很好。

出于示例的目的,我修改了来自官方spring-boot存储库的示例项目。(https://github.com/spring-projects/spring-boot/tree/master/spring-boot-samples/spring-boot-sample-data-elasticsearch)

共有1个答案

封飞
2023-03-14

看来你和我们有同样的问题。我在Spring Data Elasticsearch Jira Dataes-402上找到了一个解释。不幸的是,在3.0.2版中,这个错误仍然存在。

 类似资料:
  • 我从https://start.spring.io创建了一个版本为2.0.0.build-snapshot的Gradle引导项目,并且没有做任何更改,只是尝试使用以下方法运行应用程序: 我怀疑依赖项管理${springBootVersion}标记有问题,如图所示: https://repo1.maven.org/maven2/org/springframework/boot/spring-boot

  • 我们正在使用boto3为我们的DynamoDB,我们需要做一个完整的扫描我们的表,以便能够做到这一点,基于其他帖子,我们需要做一个分页。但是,我们无法找到分页的工作示例。这是我们所做的。 我们不知道如何将esk作为下一个查询的ExclusiveStartKey。ExclusiveStartkey参数的预期值应该是多少?我们在DynamoDB还是新手,还有很多东西需要学习,包括这个。谢谢

  • 使用分页 使用分页机能,最多可同时开启3个Web网页。 显示分页 按下按钮,会显示分页。目前显示之网页的分页,会较其他分页更长。 以不同页面开启连结 让指标对准想开启的连结,从选单列中选择[档案] > [以不同页面开启连结]。 提示 设定以其他页面开启的连结页面,将会自动以其他分页开启。 更改页面 进入选单列后,选择[档案] > [上一个分页]或[下一个分页]。 提示 按住按钮时,按下L按钮或R按

  • 操作:我遇到了这个问题,似乎处理了同样的问题,我有。不幸的是,我的文件中没有行。 我的错误显示 但是返回 我尝试在真实的JAVA_HOME和gradle试图使用的一个符号链接之间创建符号链接,但gradle试图使用的一个符号链接不是真实的,因此我得到错误 我试着在gradlew文件周围挖掘,发现了我认为可能是违规代码,但我不是100%确定它是如何工作的,而且当我编辑文件并执行时,我的所有更改都被抹

  • 我需要一些帮助在使用一个OmniFaces功能。 我有以下web.xml配置 然而,当异常发生时,用户只会被重定向到默认的500错误页面。 只有当我将错误页移出WEB-INF文件夹/WEB-INF/pages/errors/pagenotfound.xhtml-->/pages/errors/pagenotfound.xhtml时,重定向才会起作用 但这意味着现在可以直接访问错误页。但在Omnif

  • 问题内容: 我有一些限制数据以每页仅显示4个项目的代码。我使用的列大约有20到30个项目,因此我需要将这些项目分散在各个页面上。 在第一页上,我有: 您会在页面底部注意到我的定位标记,其中列出了第二个页面“ itempage2.php”。在项目页面2中,我具有相同的代码,除了我的select语句列出了偏移量4。 当我的数据库中有预定数量的项目时,这种方式可以运行。但这不是很好。仅当有更多项目时才需