diff --git a/src/main/java/org/springframework/data/elasticsearch/repository/support/SimpleElasticsearchRepository.java b/src/main/java/org/springframework/data/elasticsearch/repository/support/SimpleElasticsearchRepository.java index 64325d33d..d4993361f 100644 --- a/src/main/java/org/springframework/data/elasticsearch/repository/support/SimpleElasticsearchRepository.java +++ b/src/main/java/org/springframework/data/elasticsearch/repository/support/SimpleElasticsearchRepository.java @@ -83,11 +83,16 @@ public class SimpleElasticsearchRepository implements ElasticsearchReposi this.indexOperations = operations.indexOps(this.entityClass); if (!"true".equals(System.getenv("SPRING_DATA_ELASTICSEARCH_SKIP_REPOSITORY_INIT"))) { - if (shouldCreateIndexAndMapping() && !indexOperations.exists()) { - indexOperations.createWithMapping(); - } else if (shouldAlwaysWriteMapping()) { - indexOperations.putMapping(); - } + createIndexAndMappingIfNeeded(); + } + } + + public void createIndexAndMappingIfNeeded() { + + if (shouldCreateIndexAndMapping() && !indexOperations.exists()) { + indexOperations.createWithMapping(); + } else if (shouldAlwaysWriteMapping()) { + indexOperations.putMapping(); } } diff --git a/src/main/java/org/springframework/data/elasticsearch/repository/support/SimpleReactiveElasticsearchRepository.java b/src/main/java/org/springframework/data/elasticsearch/repository/support/SimpleReactiveElasticsearchRepository.java index e780c2d27..4e1aaea80 100644 --- a/src/main/java/org/springframework/data/elasticsearch/repository/support/SimpleReactiveElasticsearchRepository.java +++ b/src/main/java/org/springframework/data/elasticsearch/repository/support/SimpleReactiveElasticsearchRepository.java @@ -66,7 +66,7 @@ public class SimpleReactiveElasticsearchRepository implements ReactiveEla } } - private void createIndexAndMappingIfNeeded() { + public void createIndexAndMappingIfNeeded() { var blockingIndexOperations = blocking(indexOperations);