diff --git a/src/main/java/org/springframework/data/elasticsearch/core/SearchHitMapping.java b/src/main/java/org/springframework/data/elasticsearch/core/SearchHitMapping.java index d6a0b3933..7a128ae11 100644 --- a/src/main/java/org/springframework/data/elasticsearch/core/SearchHitMapping.java +++ b/src/main/java/org/springframework/data/elasticsearch/core/SearchHitMapping.java @@ -178,10 +178,10 @@ class SearchHitMapping { ElasticsearchPersistentEntityWithNestedMetaData persistentEntityWithNestedMetaData = getPersistentEntity( mappingContext.getPersistentEntity(type), nestedMetaData); - List> convertedSearchHits = new ArrayList<>(); - if (persistentEntityWithNestedMetaData.entity != null) { + List> convertedSearchHits = new ArrayList<>(); Class targetType = persistentEntityWithNestedMetaData.entity.getType(); + // convert the list of SearchHit to list of SearchHit searchHits.getSearchHits().forEach(searchHit -> { SearchDocument searchDocument = searchHit.getContent(); @@ -192,7 +192,7 @@ class SearchHitMapping { searchDocument.getScore(), // searchDocument.getSortValues(), // searchDocument.getHighlightFields(), // - mapInnerHits(searchDocument), // + searchHit.getInnerHits(), // persistentEntityWithNestedMetaData.nestedMetaData, // targetObject)); }); @@ -221,9 +221,9 @@ class SearchHitMapping { * * @param persistentEntity base entity * @param nestedMetaData nested metadata - * @return The found entity or null + * @return A {@link ElasticsearchPersistentEntityWithNestedMetaData} containing the found entity or null together with + * the {@link NestedMetaData} that has mapped field names. */ - @Nullable private ElasticsearchPersistentEntityWithNestedMetaData getPersistentEntity( @Nullable ElasticsearchPersistentEntity persistentEntity, @Nullable NestedMetaData nestedMetaData) {