JHipster 通过 CSV 初始化数据库并在 运行 Elasticsearch returns [] 之后

JHipster Initialize db by CSV and after run Elasticsearch returns []

我在使用 Elasticsearch 进行搜索时遇到问题。我使用 JHipser 生成器 v.3.4.0 并通过 *.csv 文件初始化我的 H2 数据库。接下来我尝试搜索一些东西,Elasticsearch 总是 returns [] 除非我手动添加一些对象然后我只得到这个对象。您有任何解决方法吗?

好的。我使用了 jhipster-elasticsearch-reindexer 并做了 POST 形式 swagger-ui 现在所有对象都可以通过 elasticsearch 访问。

编辑:

我自动化了 Elasticsearch 重建索引。它在启动应用程序后调用。如果您想这样做,请按照以下步骤操作。

步骤:

1. 添加到您的 JHipster 项目 Elasticsearch Reindexer 来自:https://github.com/geraldhumphries/generator-jhipster-elasticsearch-reindexer

2. 通过添加 class:

重新索引 elasticsearch
@Component
public class ElasticsearchReindexOnStart implements ApplicationListener<ContextRefreshedEvent> {

    private final ElasticsearchIndexService elasticsearchIndexService;

    @Inject
    public ElasticsearchReindexOnStart(ElasticsearchIndexService elasticsearchIndexService) {
        this.elasticsearchIndexService = elasticsearchIndexService;
    }

    @Override
    public void onApplicationEvent(ContextRefreshedEvent contextRefreshedEvent) {
        elasticsearchIndexService.reindexAll();

    }
}

在那之后,重新启动您的应用程序,现在它应该可以正常工作,而无需从 swagger-ui.

中执行 POST